Showing tag results for Installation

Jun 8, 2006
Post comments count0
Post likes count0

Run ICE Validation and Fix Errors

Heath Stewart

Windows Installer is a powerful yet complex technology. There are a lot of rules that have to be followed to be able to successfully install, maintain, and uninstall your product and to retain the functionality and tidy clean-up capabilities of Windows Installer. To this end, Internal Consistency Evaluators (ICEs) exist to aid in validating that yo...

Installation
May 19, 2006
Post comments count0
Post likes count0

File Sequencing and How Files are Located

Heath Stewart

The File table in a Windows Installer package has a Sequence column that begins with 1. Besides determining in what order files are to be installed, this column serves another, relatively more important function: determining where the source files are located.In concert with the Media table, a range of sequence numbers identify in which cabinet - ...

InstallationEssentials
Apr 20, 2006
Post comments count1
Post likes count0

Calculating Required Space for Installation

Heath Stewart

Installing a Windows Installer product package requires a certain amount of space on disk, even if all the installation is doing is running a custom action. Besides file costing and other actions typically sandwiched between the CostInitialize and CostFinalize standard actions, Windows Installer will require space under %WINDIR%Installer to cache t...

Installation
Apr 14, 2006
Post comments count0
Post likes count0

Avoid Overwriting Files in Administrative Installations

Heath Stewart

Last June before the Microsoft .NET Framework 2.0 shipped, I discussed how during administrative installations some 64-bit files overwrote some 32-bit files and I provided a transform to fix the issue. I filed a bug and the issue was fixed before .NET 2.0 shipped. Later in the release cycle the Office Crash Reporting Tool, otherwise known as the Mi...

Installation64-bit
Apr 7, 2006
Post comments count0
Post likes count0

Detecting Patches in .NET 2.0 and Visual Studio 2005

Heath Stewart

Aaron Stebner posted some sample code to detect whether the .NET Framework 1.0, 1.1, or 2.0 were installed and at what service pack level they are. Basically, the .NET Framework installation writes a common, version-specific registry key in the following location along with an SP level registry value. The sample below for an English (United States)...

InstallationVisual StudioDevelopment
Apr 7, 2006
Post comments count0
Post likes count0

Patch Files Extractor

Heath Stewart

Previously I discussed conceptually how to extract files from a patch, mentioning that the transforms contained within patches are stored as sub-storages and the cabinets that contain the files are stored as sub-streams. I've had a tool for a while that extracts the transforms and cabinets from a .msp file and wanted to share the slightly modified ...

InstallationDevelopment
Mar 31, 2006
Post comments count0
Post likes count0

Opening Patch Files when Compiled for Unicode

Heath Stewart

If you want to open a .msp file with the Windows Installer APIs, you must pass to the function, or (110) is returned. Below is the definition of both and from msiquery.h in the Windows Installer SDK.#define MSIDBOPEN_READONLY (LPCTSTR)0#define MSIDBOPEN_PATCHFILE 32/sizeof(*MSIDBOPEN_READONLY) is defined as when is defined, which is defined ...

InstallationDevelopment
Mar 27, 2006
Post comments count0
Post likes count0

Specifying the Code Page for Patch Tables

Heath Stewart

Code pages describe a character set. In MSI Databases and Code Pages I described how Windows Installer databases use a code page for the string pool, as well that the summary information stream uses its own code page in (1) to describe strings in the summary information stream. There is a bug, however, when creating a .msp patch database from a .p...

Installation
Mar 24, 2006
Post comments count0
Post likes count0

Identifying Administrative Installation Patches

Heath Stewart

Windows Installer has the ability to create administrative installations, which is a copy of the .msi database and files that have been expanded into a source directory structure. These administrative installations can easily be deployed using Active Directory group policy deployment among other things, such as creating patches since PatchWiz.dll...

Installation
Mar 21, 2006
Post comments count0
Post likes count0

Formatting Properties

Heath Stewart

A frequently asked question is about why property values in the Property table aren't formatted when the values contain properties themselves, such as:[ProductName] is copyright by [Manufacturer].The reason these property values aren't formatted is because the Value column type is simply Text, not Formatted. Other formattable column types exist, in...

Installation