Monday, September 30, 2019

It's finally here the new Windows Virtual Desktop

Here we go Virtual Desktop General Availability as of Sept. 30, 2019

"Today, we’re excited to announce that Windows Virtual Desktop (WVD) is now generally available worldwide." Windows Virtual Desktop is the only service that delivers simplified management, a multi-session Windows 10 experience hosted in Azure. This means many users can log into to same Windows 10 machine.  Moreover, WVD optimizations for Office 365 ProPlus ( a popular enterprise request) and you can connect to using standard Windows Server Remote Desktop Services (RDS) desktops and apps. 

With Windows Virtual Desktop, you can deploy and scale your Windows desktops and apps on Azure in minutes.

Get the low-down on WVD see videos below;


Tuesday, September 24, 2019

How to create a single self-contained exe using dotNET core 3.0

Once you converted your project into new .csproj format you can copy these lines into your Visual Studio project file. This exe is total self contained. 

Published trim, new feature trims out all assemblies from .Net Core to shrink the exe. But this is still experimental feature, it can trim to much out. 


Here's the .NET Conf 2019 (Sept 23, 2019) talking point about single exe feature

Thursday, September 19, 2019

Microsoft Visual Studio Team just opened sourced the C++ Standard Library (aka STL)

What is the C++ STL ?

The STL (Standard Template Library) was developed separately, and then submitted to the C++ standard committee for consideration, giving them the option of adopting it into the language. But it was not developed as part of the C++ standard, and for this reason, it is designed in a style that is very different from the rest of the C++ standard library. 

The STL at it's code provides the most fundamental functionality you expect of a standard library: The ability to store sequences of data, and the ability to process these sequences.

Every other language has a Collections/Containers part of its standard library, containing implementations of dynamic arrays (known as arraylists in Java, List in C#, and vectors in C++), linked lists, dictionaries and other common data structures.
They also typically provide some mechanims for traversing these structures. (Enumerators or iterators, for example)
The STL provides the same functionality in C++, but does it in a unusually elegant way, and with some interesting abstractions.
Press Release

Today (Sept 16, 2019) at 
CppCon 2019, we (the MSVC team) announced that we’re releasing our implementation of the C++ Standard Library (also known as the STL) as open source. is our new repository, containing all of our product source code, a new CMake build system, and a README with more information.

Saturday, September 7, 2019

MakeCert.exe Error: CryptCertStrToNameW failed => 0x80092023 (-2146885597) fix

If you getting the following error using makecert.exe ? 

Error: CryptCertStrToNameW failed => 0x80092023 (-2146885597)

Make sure the default location for makecert.exe  c:\windows\System32 or your output directory does not contain the same .cer or .pvk file you are trying to generate. makecert.exe does not overwrite those files.

Friday, September 6, 2019

PowerToys for Windows 10 Released

Power Toys for Windows 10 is now available!

Power Toys was originally released for Windows 95 but is now being re-developed for Windows 10. provides information on the first two features included in Power Toys:  FancyZones and Shortcut Guide.

Another open source Microsoft Project at

Also, hot of the press and just released my Clipboard Plaintext PowerTool!

Thursday, September 5, 2019

Windows Registry Type Frequency Counts

How many Windows Registry Types are there and what are their counts? 

Here's a Windows Registry Types frequency counts for a typical old Win7 machine with Office installed.

These are all the windows registry types that appear in .reg file; 

alias hex(1)
Default or blankString value data with escape characters
alias hex(3)
REG_BINARYBinary data (any arbitrary data)
alias hex(4)
REG_DWORDA 32-bit unsigned integer coded in little-endian format
hex(0)REG_NONENo type (the stored value, if any)
hex(1)REG_SZA string value, normally stored and exposed in UTF-16LE (when using the Unicode version of Win32 API functions), usually terminated by a NUL character
hex(2)EXPAND_SZAn “expandable” string value that can contain environment variables, normally stored and exposed in UTF-16LE, usually terminated by a NUL character
hex(3)REG_BINARYBinary data (any arbitrary data) including variable byte encoded UTF8 values
equivalent to
A 32-bit unsigned integer coded in little-endian format
hex(5)REG_DWORD_BIG_ENDIANA 32-bit unsigned integer coded in big-endian format
hex(6)REG_LINKA symbolic link (UNICODE) to another Registry key, specifying a root key and the path to the target key
hex(7)REG_MULTI_SZA multi-string value, which is an ordered list of non-empty strings, normally stored and exposed in UTF-16LE, each one terminated by a NUL character, the list being normally terminated by a second NUL character.
hex(8)REG_RESOURCE_LISTA resource list
hex(9)REG_FULL_RESOURCE_DESCRIPTORA resource descriptor
hex(a)REG_RESOURCE_REQUIREMENTS_LISTA resource requirements list
equivalent to
A 64-bit integer little-endian (introduced in Windows XP)