Windows Installer is a client/server application. When you install a package using msiexec.exe - which is executed by default in response to shell verbs such as Install - or APIs like MsiInstallProduct the package is initially processed under the user's credentials. This means, of course, that in over-the-shoulder elevation when administrative cred...
I've discussed a couple different reasons that Windows Installer 3.0-style patches - those with the MsiPatchMetadata table in the patch package itself - might not be uninstallable. I explained another reason in a discussion about the new patch build support in Windows Installer XML (WiX) v3 recently, describing why unchanged files should not be upd...
Patching with Windows Installer is the act of applying a pair of transforms in a patch to a Windows Installer product, then repairing that product. Any changes made in the transforms affect the aggregate view that Windows Installer reinstalls. This is displayed in the diagram below, where the bottom layer is the components in the product MSI, the s...
I have posted a Windows Live Writer plugin I wrote to aide posting URLs to MSDN, simply named Paste MSDN URL. It removes, if present, the culture in the URL so that when a reader clicks the link he or she sees the content on MSDN in their preferred language if a translation is available.So, http://msdn2.microsoft.com/en-us/library/aa372866.aspx&nbs...
Windows Script custom actions should be avoided. They are difficult to debug, get blocked by virus scanners, and are far more susceptible to machine state than native custom actions. That is indicated by Windows Installer error messages 2738 and 2739, which read:
As some
people have found, re-registering the runtime libraries vbscript.dll and jsc...
To write an installer for your PowerShell snap-in, the PowerShell documentation instructs you to extend the PSSnapIn or CustomPSSnapIn class. When you add your snap-in assembly to the Custom Action view in a Windows Installer Project in Visual Studio, the InstallerClass property should be set to True and your installer class will be run when the Wi...
Peter Marcu has begun talking about new functionality added into WiX 3.0 that he's been working on a lot. One of the specific features is filtering by patch families. Based on a concept Office has used internally, patch families in this case are a set of resources that must be in a patch, and that patch can only be superseded by another patch with ...
When installing Visual Studio 2005 Service Pack 1, users may see an error that reads,
Error 1718.File D:WINDOWSInstaller50baad.msp was rejected by digital signature policy.
I've published instructions to work around this issue using either the Management Console snap-in or the registry, the latter including a sample batch script to automate VS 2005...
Rob Mensching, father of Windows Installer XML (WiX), blogs about why managed custom actions are a bad idea. Aaron Stebner follows up by saying (and has said before):
How do you know what's natively supported? Those who know me already know what I'm going to say: read the docs. The Windows Installer SDK has some information if you look for it, and ...