Welcome to TechNet Blogs Sign in | Join | Help

From MSI to WiX, Part 11 - Windows Installer Automation Interface, Part 1

The main page for the series is here.

 

Introduction

This post starts a series on Windows Installer Object Model.  We will explore how and when to use automation interface objects, properties, and functions.

Roughly, we have three main groups:

  • Getting information about installed products
  • Updating installed products
  • Making changes in the MSI database during installation

There also few methods to deal with advertising and few helper methods (getting value of environment variable or registry, few file related functions).

The following table shows in which version of MSI objects and methods/properties were introduced:

Object Property/Method 2.0 3.0 3.1 4.0 4.5
Installer AddSource X        
  AdvertiseProduct       X  
  AdvertiseScript       X  
  ApplyPatch   X      
  ApplyMultiplePatches   X      
  ClearSourceList X        
  CollectUserInfo X        
  ComponentClients X        
  ComponentPath X        
  ComponentQualifiers X        
  Components X        
  ConfigureFeature X        
  ConfigureProduct X        
  CreateAdvertiseScript       X  
  CreateRecord X        
  EnableLog X        
  Environment X        
  ExtractPatchXMLData   X      
  FeatureParent X        
  Features X        
  FeatureState X        
  FeatureUsageCount X        
  FeatureUsageDate X        
  FileAttributes X        
  FileHash X        
  FileSignatureInfo X        
  FileSize X        
  FileVersion X        
  ForceSourceListResolution X        
  InstallProduct X        
  LastErrorRecord X        
  OpenPackage X        
  OpenDatabase X        
  OpenProduct X        
  Patches X        
  PatchesEx   X      
  PatchFiles       X  
  PatchInfo X        
  PatchTransforms X        
  ProductInfo   X      
  ProductInfoFromScript       X  
  ProductElevated       X  
  ProductsEx   X      
  Products X        
  ProductState X        
  ProvideAssembly       X  
  ProvideComponent X        
  ProvideQualifiedComponent X        
  QualifierDescription X        
  RegistryValue X        
  ReinstallFeature X        
  ReinstallProduct X        
  RelatedProducts X        
  RemovePatches   X      
  ShortcutTarget X        
  SummaryInformation X        
  UILevel X        
  UseFeature X        
  Version X        
Product SourceListAddMediaDisk   X      
  SourceListAddSource   X      
  SourceListClearSource   X      
  SourceListClearAll   X      
  SourceListClearMediaDisk   X      
  SourceListForceResolution   X      
  SourceListInfo   X      
  ComponentState   X      
  ProductCode   X      
  InstallProperty   X      
  Context   X      
  FeatureState   X      
  MediaDisks   X      
  Sources   X      
  State   X      
  UserSid   X      
FeatureInfo Attributes X        
  Description X        
  Title X        
Patch SourceListAddMediaDisk   X      
  SourceListAddSource   X      
  SourceListClearSource   X      
  SourceListClearAll   X      
  SourceListClearMediaDisk   X      
  SourceListForceResolution   X      
  Context   X      
  MediaDisks   X      
  PatchCode   X      
  PatchProperty   X      
  ProductCode   X      
  SourceListInfo   X      
  Sources   X      
  State   X      
  UserSid   X      
Database ApplyTransform X        
  Commit X        
  CreateTransformSummaryInfo X        
  DatabaseState X        
  EnableUIPreview X        
  Export X        
  GenerateTransform X        
  Import X        
  Merge X        
  OpenView X        
  PrimaryKeys X        
  SummaryInformation X        
  TablePersistent X        
Session ComponentCosts X        
  ComponentCurrentState X        
  ComponentRequestState X        
  Database X        
  DoAction X        
  EvaluateCondition X        
  FeatureCost X        
  FeatureCurrentState X        
  FeatureInfo X        
  FeatureRequestState X        
  FeatureValidStates X        
  FormatRecord X        
  Installer X        
  Language X        
  Message X        
  Mode X        
  ProductProperty X        
  Property X        
  Sequence X        
  SetInstallLevel X        
  SourcePath X        
  TargetPath X        
  VerifyDiskSpace X        
SummaryInfo Persist X        
  Property X        
  PropertyCount X        
View Close X        
  ColumnInfo X        
  Execute X        
  Fetch X        
  GetError X        
  Modify X        
UIPreview Property X        
  ViewBillboard X        
  ViewDialog X        
Record ClearData X        
  DataSize X        
  FieldCount X        
  FormatText X        
  IntegerData X        
  IsNull X        
  ReadStream X        
  StringData X        
RecordList Count X        
  Item X        
StringList Count X        
  Item X        
Published Sunday, June 29, 2008 10:17 PM by Alex Shevchuk
Filed under: , ,

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

No Comments

Leave a Comment

(required) 
required 
(required) 

  
Enter Code Here: Required
 
Page view tracker