Workaround for 0x8007007e when trying to to locate an instance of Visual Studio

We are investigating how a particular rare problem occurs that can prevent clients like VSIXInstaller.exe, vswhere.exe, and others from finding any Visual Studio instance that results in an error similar to the following: This is the CLSID for the Visual Studio Installer query API, and despite being registered the COM server DLL is missing. Workaround… Read more

Get the Windows Installer PowerShell Module easier with WMF 5.0

Many years ago when PowerShell was first in beta, I saw an opportunity to write cmdlets that I could string together in different ways rather than writing and maintaining a bunch of one-off Windows scripts for various day-to-day tasks and customer diagnostics. I created the Windows Installer PowerShell Module to fill that role. These cmdlets… Read more

Seeing colors with psake

Psake (pronounced like Japanese “sake”) is a build automation tool similar to others out there like make, rake, etc., but built using PowerShell as the language of choice. So it should be no surprise that I use it for my Windows Installer PowerShell Module. It’s useful for automating tasks not limited to just calling MSBuild,… Read more

Windows Installer PowerShell Module 2.2.1 Released

Yesterday I released servicing update 2.2.1, which updates 2.2.0 to fix a few bugs and add a few cool new features: You can define the [string] $MsiAttributeColumnFormat variable to dictate how attribute columns should appear. The values you can pass are the same as the enumeration format strings, except that “G” displays the culture-invariant decimal… Read more

Windows Installer PowerShell Module 2.2.0 Released

Years ago I released PowerShell cmdlets (“command-lets”) that make querying product and patch information easy and robust. Windows PowerShell is a powerful shell that pipes objects – not simply text – and provides full access to the .NET Framework as part of the language (though higher-level constructs are most often better). Earlier this week I… Read more