Remko Weijnen's Blog (Remko's Blog)

About Virtualization, VDI, SBC, Application Compatibility and anything else I feel like


8,576 views

If this is your first visit, take your time and look around. Here are some things you might be looking for:

Do you like my work? Did my work help you?

  • Leave a comment and tell me how it was usefull to you.
  • If you want you can make a donation with the Paypal Donate Button in the right Sidebar.

Thank you!

  • Comments Off on Dear Visitor
  • Filed under: Uncategorized
  • 496 views

    It’s been a little while since I had a “nice” application problem to blog about. It’s weird but I actually enjoy looking into those issues, well probably means I’m weird which is probably right.

    I use a Virtual Desktop as my primary work desktop since my day 1 at work (and all the day 1’s after).

    I like it because of the flexibility it gives me to work on any device and I also feel it’s that “drinking your own Champagne” is the very best way to really see if something is good!

    Today I needed to write some notes and I wanted to use Quip for that but I’ve been having intermittent issues with the Quip Desktop app. I would launch and simple show a white screen with a stalled busy indicator.

    image

    Like most persons do, I ignored it and continued in the browser version for a while but as I don’t really like to have applications in a browser (hidden between 104 other tabs) I decided I would no longer “take” this and dived into it.
    Read the rest of this entry »

  • 0 Comments
  • Filed under: .NET
  • 409 views

    RegeditSometimes it can be useful to determine what registry key belongs to a registry key handle. And exampling is when hooking RegQueryValue so you can determine the registry key that a value belongs to instead of having to track the registry key when it’s opened.

    To obtain the registry key we can pass a handle to the NtQueryKey API with which has the following signature:

    To get the keyname we need to pass the KeyNameInformation enum and we can set the ReturnLength parameter to 0 to obtain the required buffer size:

    Read the rest of this entry »

  • 0 Comments
  • Filed under: C#, Uncategorized
  • 481 views

    Sometimes I want to download a video from a website for offline usage, for example when I want to watch it whilst travelling.

    Most video websites don’t want you do download videos as they of course want to show their ads and receive the clicks. I am not discussing the legal side here, up to you to check if it’s legally allowed to download the video you’re interested.

    A very common way to make direct downloading of a video more difficult is to cut a video in many small video files (.ts files). Here’s an example screenshot of the Chrome developer view whilst playing a video from a popular Dutch website called Dumpert, filtering on .ts:

    Screenshot of the Chrome Developer View showing a list of files downloaded, filtered on .ts files

    You can of course manually download al the .ts files and re-encode them to a single video file but it would be a lot of work.

    The most common way to do this automatically is to use a browser extension or a separate application but in many cases they are either ridden with ads or malware.

    So let’s see if we can do this ourselves.

    We will need the following tools:

    Just the 2 binaries will work, in my case (Windows) youtube-dl.exe and ffmpeg.exe which can you place in the same folder.

    I am using the following video in this example: https://www.dumpert.nl/?selectedId=100043775_5cc0ba15

    Read the rest of this entry »

    790 views

    In my lab I have deployed Office 2019 to an Windows 2019 VM to do some testing with Citrix Virtual Apps and Desktops.

    The proper way to do this is to customize the Office installation using the Office Deployment Tool (ODT). The page even lists an example containing a value to accept the EULA.

    I didn’t do that, I just installed it manually (I know.) and upon first launch of any of the Office components I would always get this EULA nag screen:

    Microsoft Office EULA nag screen

    So how do you get rid of this nag screen if you didn’t use ODT?

    To figure that out I started Outlook whilst I ran SysInternals Process Monitor with the following Filters configured:

    • Process Name is outlook.exe
    • Path contains license, eula or registration:

    Screenshot of the Process Monitor Filter dialog showing Process Name is outlook.exe and Path contains license, eula or registration

    What I was looking for was (ideally) a registry key or value that was global to all users (so in HKLM) and for all Office components. And from the Procmon trace this Value seemed a good candidate:

    Showing that outlook.exe attempts to read the following value: HKLM\SOFTWARE\Microsoft\Office\ClickToRun\REGISTRY\MACHINE\Software\Wow6432Node\Microsoft\Office\16.0\Registration\AcceptAllEulas

    Read the rest of this entry »

    414 views

    This content is password protected. To view it please enter your password below:

  • Enter your password to view comments.
  • Filed under: Uncategorized
  • 522 views

    After changing AWS accounts I resetup my API key so I could use the AWS PowerShell CmdLets.

    However even though I was sure I configured everything correctly I couldn’t call any EC2 cmdlet. More about that further below but let’s refresh how to setup an API key for PowerShell:

    The procedure to do this is quite simple:

    First you create an IAM user (go to Services | IAM) then in the left treeview select Users or use this direct link.

    Identity and Access Management (IAM) Treeview

    Click Add users or use this direct link, give the user a name and select “Access key – Programmatic access”

    In the next screen select the appropriate permissions, in this screenshot I’m using AdministratorAccess but this of course means you’re giving this user the permissions to do absolutely anything.

    So have a good look at the minimum permissions that you actually require.

    Click Next on the Add tags screen and the Review screen should look something like this:

    On the next screen you will get the Access key ID and the Secret access key. Note that this is the only time you will get to see the Secret access key so use the copy button or Download the .csv file (but delete it from disk when you’re done of course).

    Read the rest of this entry »

  • 0 Comments
  • Filed under: AWS, PowerShell
  • 1,274 views

    It’s been a while since I last wrote a post but it does feel good so I’m expecting to pick up blogging in a more regular cadence soon!

    This one is a quicky though, as I had an annoying issue with Ubuntu 22.04 VM’s running on VMware workstation.

    Every time I attempted to paste a (larger) file from the host it would crash Ubuntu’s File Explorer (Nautilus):

    Nautilus (Ubuntu's File Explorer) crashes when pasting a file from a VMware host

    click video above to play

    Fortunately I found a workaround:

    Read the rest of this entry »

  • 0 Comments
  • Filed under: Linux, Ubuntu, VMWare
  • 2,244 views

    I had a strange issue today: I couldn’t open any webpage in the Edge browser on my Windows 10 machine:

    Edge browser with error message "Can't reach this page"
    Edge browser: “Can’t reach this page”

    Network icon showing Internet access

    The network icon was showing that there was Internet access and a quick check on the command prompt showed that the connection (including name resolution appeared to work fine):

    Command prompt showing that ping to www.google.com works fine.ping www.google.comPinging www.google.com [172.217.168.196] with 32 bytes of data:
Reply from 172.217.168.196: bytes=32 time=15ms TTL=55
Reply from 172.217.168.196: bytes=32 time=14ms TTL=55Ping statistics for 172.217.168.196:
Packets: Sent = 2, Received = 2, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 14ms, Maximum = 15ms, Average = 14ms
    ping to www.google.com

    Other browsers such as Firefox (my default browser) and Chrome also worked fine but some other Microsoft applications also didn’t work such as the Microsoft Store:

    Read the rest of this entry »
  • 1 Comment
  • Filed under: Uncategorized
  • 631 views

    I had a strange error today using the Desktop App Converter with the parameters given from the Store for Business.

    The conversion would fail with the following error:

    DesktopAppConverter : error 'E_MANIFEST_USE_DEFAULT_VALUE_FAILED': Property 'Package.Applications.Application.Id' in AppxManifest.xml could not be set to the default value

    I’m not sure why this fails as the PackageName is provided by the store and should be valid. An answer on stackoverflow suggested to use a different value for the PackageName parameter and then edit the manifest.

    I don’t like this method as manual modifications of the manifest often leads to errors when submitting the application to the store.

    So let’s have a look and see why we’re getting this error.

    I searched for E_MANIFEST_USE_DEFAULT_VALUE_FAILED in the DesktopAppConverter folder and found 1 occurence in ManifestOps.ps1.

    From a look at the code it wasn’t immediately clear where the validation failed so I decided to debug it.

    Read the rest of this entry »

  • 1 Comment
  • Filed under: Uncategorized
  • 2,337 views

    I was trying to sign an .appx package that I created with the Desktop App Converter. However signtool returned the following error: Sign returned error: 0x800700C1
    For more information, please see http://aka.ms/badexeformat

    image

    Sadly signtool doesn’t return more detailed information, even when passing the debug switch:

    image

    So what’s going on?

    Read the rest of this entry »

  • 0 Comments
  • Filed under: UWP
  • Blogroll


    Categories


    Archives