Darwin Descriptors in Windows Registry – Cryptic Strings

This cryptic-looking string, sometimes referred to as a “Darwin Descriptor” is actually an encoded representation of a specific product, component, and feature. If this extra value exists, Windows Installer will decode the data, and use it to perform checks against that product and component. If the component is found to be missing or corrupt, Windows Installer will launch a repair to restore the missing file or data, and finally launch the referenced application as normal, passing the appropriate command-line options to it.

How to add WinSxS assemblies into a MSI package?

If you need to install Win32 side by side assemblies globally, you should use the MsiAssembly and MsiAssemblyName tables to do so. Your InstallExecuteSequence table should also include the MsiPublishAssemblies and MsiUnpublishAssemblies standard actions. There is more information on these tables in MSDN and the sample sequence.msi package provided with the Windows Installer SDK (of… Continue reading How to add WinSxS assemblies into a MSI package?

How do I Create Right-Click Context Menu for my Application?

Yesterday at office when we were discussing about the applications support for 64 bit Vista, One of my work-mate, Sreejith mentioned that Symantec Antivirus doesn’t give him a context menu for scanning viruses. Here are few simple steps to create the right click context menu for scanning viruses. I am just sharing the same to… Continue reading How do I Create Right-Click Context Menu for my Application?

Best Practices and Guidelines: Packaging .NET Assemblies

This is a MSDN extract; I have still posted it because many of us do not follow these rules while packaging .NET applications. The Installer can install, remove and update Win32 and .NET assemblies, including side-by-side and private assemblies in Windows XP. To avoid common problems, follow these rules when using assemblies: General: A component… Continue reading Best Practices and Guidelines: Packaging .NET Assemblies

What is a Restricted Public Property? How can I use that?

There are 3 types of properties in Windows Installer; namely: Public Property, Private Property and Restricted Public Property. Public property can be changed from command line while installing the package whereas private properties cannot be changed from command line. Restricted public properties can be only changed by a system administrator or by a user who… Continue reading What is a Restricted Public Property? How can I use that?

How good is to use GetVersion function to detect the OS version number?

The internal version number for Windows Vista is 6.0 and Windows 7 is 6.1.  The GetVersion function returns this version number. The problem is, some applications will return a higher version number.  Symptoms of OS Version  Applications that check for OS version will get higher version number. Application installers may prevent themselves from installing the… Continue reading How good is to use GetVersion function to detect the OS version number?

Capture configuration Entries through Gap-Capture

This tip will shine some light on the concept of performing a “Gap Capture”. Let’s start with a simple equation: GAP CAPTURE = SOURCE APPLICATION – CAPTURED MSI. Basically, a Gap Capture is the difference between a Source Application and Captured MSI. When do we do this?? You have done the setup capture but your… Continue reading Capture configuration Entries through Gap-Capture

Basics and Introduction to .NET Framework Assemblies

An Assembly is a logical unit of code. Assembly physically exist as DLLs or EXEs. One assembly can contain one or more files. The constituent files can include any file types like image files, text files etc. along with DLLs or EXEs. When you compile your source code by default the exe/dll generated is actually… Continue reading Basics and Introduction to .NET Framework Assemblies

How to register a File Extension in Windows?

If your application uses special file extensions, you might want to register them so that the application gets started when the icon associated with the file gets double-clicked. There are special tables for this in the MSI structure (Extension and ProgId). The contents of these tables are used for advertising. You can also make your… Continue reading How to register a File Extension in Windows?