[try3, 2/4] msi: Expand IDL file to contain all OLE automation
interfaces.
Misha Koshelev
mk144210 at bcm.tmc.edu
Thu Mar 1 16:10:29 CST 2007
This patch expands the IDL to contain all OLE automation interfaces that
MS Windows Installer 3.0 (vs 2.0 in the previous version) contains, and
adds a msiserver_dispids.h file that has define statements for all the
dispids.
Changelog:
* msi: Expand IDL file to contain all OLE automation interfaces.
-------------- next part --------------
From edf9c7bd15442b3b8f2ffbe1ce80333ee31dafb5 Mon Sep 17 00:00:00 2001
From: Misha Koshelev <mk144210 at bcm.tmc.edu>
Date: Wed, 28 Feb 2007 12:08:52 -0600
Subject: msi: Expand IDL file to contain all OLE automation interfaces.
---
dlls/msi/msiserver.idl | 873 +++++++++++++++++++++++++++++++++++++++---
dlls/msi/msiserver_dispids.h | 180 +++++++++
2 files changed, 993 insertions(+), 60 deletions(-)
diff --git a/dlls/msi/msiserver.idl b/dlls/msi/msiserver.idl
index 9966d90..8735b7c 100644
--- a/dlls/msi/msiserver.idl
+++ b/dlls/msi/msiserver.idl
@@ -1,5 +1,6 @@
/*
* Copyright (C) 2007 Mike McCormack
+ * Copyright (C) 2007 Misha Koshelev
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@@ -16,14 +17,21 @@
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
*/
+#include "msiserver_dispids.h"
import "unknwn.idl";
import "wtypes.idl";
import "objidl.idl";
import "oaidl.idl";
-[ uuid(000C1092-0000-0000-C000-000000000046), version(1.0) ]
+[
+ uuid(000C1092-0000-0000-C000-000000000046),
+ version(1.0),
+ helpstring("Microsoft Windows Installer Object Library")
+]
library WindowsInstaller
{
+ /* TLib :
+ * Forward declare all types defined in this typelib */
dispinterface Installer;
dispinterface Record;
dispinterface Session;
@@ -37,87 +45,832 @@ library WindowsInstaller
dispinterface Product;
dispinterface Patch;
- [ uuid(000C1090-0000-0000-C000-000000000046) ]
- dispinterface Installer
- {
- properties:
- methods:
- }
-
- [ uuid(000C1093-0000-0000-C000-000000000046) ]
- dispinterface Record
- {
- properties:
- methods:
- }
-
- [ uuid(000C1095-0000-0000-C000-000000000046) ]
- dispinterface StringList
- {
+ typedef enum {
+ msiUILevelNoChange = 0,
+ msiUILevelDefault = 1,
+ msiUILevelNone = 2,
+ msiUILevelBasic = 3,
+ msiUILevelReduced = 4,
+ msiUILevelFull = 5,
+ msiUILevelHideCancel = 32,
+ msiUILevelProgressOnly = 64,
+ msiUILevelEndDialog = 128,
+ msiUILevelSourceResOnly = 256
+ } MsiUILevel;
+
+ typedef enum {
+ msiInstallStateNotUsed = -7,
+ msiInstallStateBadConfig = -6,
+ msiInstallStateIncomplete = -5,
+ msiInstallStateSourceAbsent = -4,
+ msiInstallStateInvalidArg = -2,
+ msiInstallStateUnknown = -1,
+ msiInstallStateBroken = 0,
+ msiInstallStateAdvertised = 1,
+ msiInstallStateRemoved = 1,
+ msiInstallStateAbsent = 2,
+ msiInstallStateLocal = 3,
+ msiInstallStateSource = 4,
+ msiInstallStateDefault = 5
+ } MsiInstallState;
+
+ typedef enum {
+ msiReinstallModeFileMissing = 2,
+ msiReinstallModeFileOlderVersion = 4,
+ msiReinstallModeFileEqualVersion = 8,
+ msiReinstallModeFileExact = 16,
+ msiReinstallModeFileVerify = 32,
+ msiReinstallModeFileReplace = 64,
+ msiReinstallModeMachineData = 128,
+ msiReinstallModeUserData = 256,
+ msiReinstallModeShortcut = 512,
+ msiReinstallModePackage = 1024
+ } MsiReinstallMode;
+
+ typedef enum {
+ msiInstallTypeDefault = 0,
+ msiInstallTypeNetworkImage = 1,
+ msiInstallTypeSingleInstance = 2
+ } MsiInstallType;
+
+ typedef enum {
+ msiInstallModeNoSourceResolution = -3,
+ msiInstallModeNoDetection = -2,
+ msiInstallModeExisting = -1,
+ msiInstallModeDefault = 0
+ } MsiInstallMode;
+
+ typedef enum {
+ msiSignatureInfoCertificate = 0,
+ msiSignatureInfoHash = 1
+ } MsiSignatureInfo;
+
+ typedef enum {
+ msiReadStreamInteger = 0,
+ msiReadStreamBytes = 1,
+ msiReadStreamAnsi = 2,
+ msiReadStreamDirect = 3
+ } MsiReadStream;
+
+ typedef enum {
+ msiRunModeAdmin = 0,
+ msiRunModeAdvertise = 1,
+ msiRunModeMaintenance = 2,
+ msiRunModeRollbackEnabled = 3,
+ msiRunModeLogEnabled = 4,
+ msiRunModeOperations = 5,
+ msiRunModeRebootAtEnd = 6,
+ msiRunModeRebootNow = 7,
+ msiRunModeCabinet = 8,
+ msiRunModeSourceShortNames = 9,
+ msiRunModeTargetShortNames = 10,
+ msiRunModeWindows9x = 12,
+ msiRunModeZawEnabled = 13,
+ msiRunModeScheduled = 16,
+ msiRunModeRollback = 17,
+ msiRunModeCommit = 18
+ } MsiRunMode;
+
+ typedef enum {
+ msiInstallContextFirstVisible = 0,
+ msiInstallContextUserManaged = 1,
+ msiInstallContextUser = 2,
+ msiInstallContextMachine = 4,
+ msiInstallContextAllUserManaged = 8
+ } MsiInstallContext;
+
+ [
+ uuid(000C1090-0000-0000-C000-000000000046),
+ helpcontext(0x00002328)
+ ]
+ dispinterface Installer {
properties:
+ [id(DISPID_INSTALLER_UILEVEL)]
+ MsiUILevel UILevel;
methods:
- }
+ [id(DISPID_INSTALLER_CREATERECORD)]
+ Record* CreateRecord([in] long Count);
+ [id(DISPID_INSTALLER_OPENPACKAGE)]
+ Session* OpenPackage(
+ [in] VARIANT PackagePath,
+ [in, optional, defaultvalue(0)] long Options);
+ [id(DISPID_INSTALLER_OPENPRODUCT)]
+ Session* OpenProduct([in] BSTR ProductCode);
+ [id(DISPID_INSTALLER_OPENDATABASE)]
+ Database* OpenDatabase(
+ [in] BSTR DatabasePath,
+ [in] VARIANT OpenMode);
+ [id(DISPID_INSTALLER_SUMMARYINFORMATION), propget]
+ SummaryInfo* SummaryInformation(
+ [in] BSTR PackagePath,
+ [in, optional, defaultvalue(0)] long UpdateCount);
+ [id(DISPID_INSTALLER_ENABLELOG)]
+ void EnableLog(
+ [in] BSTR LogMode,
+ [in] BSTR LogFile);
+ [id(DISPID_INSTALLER_INSTALLPRODUCT)]
+ void InstallProduct(
+ [in] BSTR PackagePath,
+ [in, optional, defaultvalue("0")] BSTR PropertyValues);
+ [id(DISPID_INSTALLER_VERSION), propget]
+ BSTR Version();
+ [id(DISPID_INSTALLER_LASTERRORRECORD)]
+ Record* LastErrorRecord();
+ [id(DISPID_INSTALLER_REGISTRYVALUE)]
+ BSTR RegistryValue(
+ [in] VARIANT Root,
+ [in] BSTR Key,
+ [in, optional] VARIANT Value);
+ [id(DISPID_INSTALLER_FILEATTRIBUTES)]
+ long FileAttributes([in] BSTR FilePath);
+ [id(DISPID_INSTALLER_FILESIZE)]
+ long FileSize([in] BSTR FilePath);
+ [id(DISPID_INSTALLER_FILEVERSION)]
+ BSTR FileVersion(
+ [in] BSTR FilePath,
+ [in, optional] VARIANT Language);
+ [id(DISPID_INSTALLER_ENVIRONMENT), propget]
+ BSTR Environment([in] BSTR Variable);
+ [id(DISPID_INSTALLER_ENVIRONMENT), propput]
+ void Environment(
+ [in] BSTR Variable,
+ [in] BSTR rhs);
+ [id(DISPID_INSTALLER_PRODUCTSTATE), propget]
+ MsiInstallState ProductState([in] BSTR Product);
+ [id(DISPID_INSTALLER_PRODUCTINFO), propget]
+ BSTR ProductInfo(
+ [in] BSTR Product,
+ [in] BSTR Attribute);
+ [id(DISPID_INSTALLER_CONFIGUREPRODUCT)]
+ void ConfigureProduct(
+ [in] BSTR Product,
+ [in] long InstallLevel,
+ [in] MsiInstallState InstallState);
+ [id(DISPID_INSTALLER_REINSTALLPRODUCT)]
+ void ReinstallProduct(
+ [in] BSTR Product,
+ [in] MsiReinstallMode ReinstallMode);
+ [id(DISPID_INSTALLER_COLLECTUSERINFO)]
+ void CollectUserInfo([in] BSTR Product);
+ [id(DISPID_INSTALLER_APPLYPATCH)]
+ void ApplyPatch(
+ [in] BSTR PatchPackage,
+ [in] BSTR InstallPackage,
+ [in] MsiInstallType InstallType,
+ [in] BSTR CommandLine);
+ [id(DISPID_INSTALLER_FEATUREPARENT), propget]
+ BSTR FeatureParent(
+ [in] BSTR Product,
+ [in] BSTR Feature);
+ [id(DISPID_INSTALLER_FEATURESTATE), propget]
+ MsiInstallState FeatureState(
+ [in] BSTR Product,
+ [in] BSTR Feature);
+ [id(DISPID_INSTALLER_USEFEATURE)]
+ void UseFeature(
+ [in] BSTR Product,
+ [in] BSTR Feature,
+ [in] MsiInstallMode InstallMode);
+ [id(DISPID_INSTALLER_FEATUREUSAGECOUNT), propget]
+ long FeatureUsageCount(
+ [in] BSTR Product,
+ [in] BSTR Feature);
+ [id(DISPID_INSTALLER_FEATUREUSAGEDATE), propget]
+ DATE FeatureUsageDate(
+ [in] BSTR Product,
+ [in] BSTR Feature);
+ [id(DISPID_INSTALLER_CONFIGUREFEATURE)]
+ void ConfigureFeature(
+ [in] BSTR Product,
+ [in] BSTR Feature,
+ [in] MsiInstallState InstallState);
+ [id(DISPID_INSTALLER_REINSTALLFEATURE)]
+ void ReinstallFeature(
+ [in] BSTR Product,
+ [in] BSTR Feature,
+ [in] MsiReinstallMode ReinstallMode);
+ [id(DISPID_INSTALLER_PROVIDECOMPONENT)]
+ BSTR ProvideComponent(
+ [in] BSTR Product,
+ [in] BSTR Feature,
+ [in] BSTR Component,
+ [in] long InstallMode);
+ [id(DISPID_INSTALLER_COMPONENTPATH), propget]
+ BSTR ComponentPath(
+ [in] BSTR Product,
+ [in] BSTR Component);
+ [id(DISPID_INSTALLER_PROVIDEQUALIFIEDCOMPONENT)]
+ BSTR ProvideQualifiedComponent(
+ [in] BSTR Category,
+ [in] BSTR Qualifier,
+ [in] long InstallMode);
+ [id(DISPID_INSTALLER_QUALIFIERDESCRIPTION), propget]
+ BSTR QualifierDescription(
+ [in] BSTR Category,
+ [in] BSTR Qualifier);
+ [id(DISPID_INSTALLER_COMPONENTQUALIFIERS), propget]
+ StringList* ComponentQualifiers([in] BSTR Category);
+ [id(DISPID_INSTALLER_PRODUCTS), propget]
+ StringList* Products();
+ [id(DISPID_INSTALLER_FEATURES), propget]
+ StringList* Features([in] BSTR Product);
+ [id(DISPID_INSTALLER_COMPONENTS), propget]
+ StringList* Components();
+ [id(DISPID_INSTALLER_COMPONENTCLIENTS), propget]
+ StringList* ComponentClients([in] BSTR Component);
+ [id(DISPID_INSTALLER_PATCHES), propget]
+ StringList* Patches([in] BSTR Product);
+ [id(DISPID_INSTALLER_RELATEDPRODUCTS), propget]
+ StringList* RelatedProducts([in] BSTR UpgradeCode);
+ [id(DISPID_INSTALLER_PATCHINFO), propget]
+ BSTR PatchInfo(
+ [in] BSTR Patch,
+ [in] BSTR Attribute);
+ [id(DISPID_INSTALLER_PATCHTRANSFORMS), propget]
+ BSTR PatchTransforms(
+ [in] BSTR Product,
+ [in] BSTR Patch);
+ [id(DISPID_INSTALLER_ADDSOURCE)]
+ void AddSource(
+ [in] BSTR Product,
+ [in] BSTR User,
+ [in] BSTR Source);
+ [id(DISPID_INSTALLER_CLEARSOURCELIST)]
+ void ClearSourceList(
+ [in] BSTR Product,
+ [in] BSTR User);
+ [id(DISPID_INSTALLER_FORCESOURCELISTRESOLUTION)]
+ void ForceSourceListResolution(
+ [in] BSTR Product,
+ [in] BSTR User);
+ [id(DISPID_INSTALLER_GETSHORTCUTTARGET), propget]
+ Record* GetShortcutTarget([in] BSTR ShortcutPath);
+ [id(DISPID_INSTALLER_FILEHASH)]
+ Record* FileHash(
+ [in] BSTR FilePath,
+ [in] long Options);
+ [id(DISPID_INSTALLER_FILESIGNATUREINFO)]
+ SAFEARRAY(unsigned char) FileSignatureInfo(
+ [in] BSTR FilePath,
+ [in] long Options,
+ [in] MsiSignatureInfo Format);
+ [id(DISPID_INSTALLER_REMOVEPATCHES)]
+ void RemovePatches(
+ [in] BSTR PatchList,
+ [in] BSTR Product,
+ [in] MsiInstallType UninstallType,
+ [in, optional, defaultvalue("0")] BSTR PropertyList);
+ [id(DISPID_INSTALLER_APPLYMULTIPLEPATCHES)]
+ void ApplyMultiplePatches(
+ [in] BSTR PatchPackage,
+ [in] BSTR Product,
+ [in] BSTR PropertiesList);
+ [id(DISPID_INSTALLER_PRODUCT), propget]
+ Product* Product(
+ [in] BSTR Product,
+ [in] BSTR UserSid,
+ [in] MsiInstallContext iContext);
+ [id(DISPID_INSTALLER_PATCH), propget]
+ Patch* Patch(
+ [in] BSTR PatchCode,
+ [in] BSTR ProductCode,
+ [in] BSTR UserSid,
+ [in] MsiInstallContext iContext);
+ [id(DISPID_INSTALLER_PRODUCTSEX), propget]
+ RecordList* ProductsEx(
+ [in] BSTR Product,
+ [in] BSTR UserSid,
+ [in] long Contexts);
+ [id(DISPID_INSTALLER_PATCHESEX), propget]
+ RecordList* PatchesEx(
+ [in] BSTR Product,
+ [in] BSTR UserSid,
+ [in] long Contexts,
+ [in] long filter);
+ [id(DISPID_INSTALLER_EXTRACTPATCHXMLDATA)]
+ BSTR ExtractPatchXMLData([in] BSTR PatchPath);
+ };
- [ uuid(000C1096-0000-0000-C000-000000000046) ]
- dispinterface RecordList
- {
+ [
+ uuid(000C1093-0000-0000-C000-000000000046),
+ helpcontext(0x00002454)
+ ]
+ dispinterface Record {
properties:
methods:
- }
+ [id(DISPID_RECORD_STRINGDATA), propget]
+ BSTR StringData([in] long Field);
+ [id(DISPID_RECORD_STRINGDATA), propput]
+ void StringData(
+ [in] long Field,
+ [in] BSTR rhs);
+ [id(DISPID_RECORD_INTEGERDATA), propget]
+ long IntegerData([in] long Field);
+ [id(DISPID_RECORD_INTEGERDATA), propput]
+ void IntegerData(
+ [in] long Field,
+ [in] long rhs);
+ [id(DISPID_RECORD_SETSTREAM)]
+ void SetStream(
+ [in] long Field,
+ [in] BSTR FilePath);
+ [id(DISPID_RECORD_READSTREAM)]
+ BSTR ReadStream(
+ [in] long Field,
+ [in] long Length,
+ [in] MsiReadStream Format);
+ [id(DISPID_RECORD_FIELDCOUNT), propget]
+ long FieldCount();
+ [id(DISPID_RECORD_ISNULL), propget]
+ VARIANT_BOOL IsNull([in] long Field);
+ [id(DISPID_RECORD_DATASIZE), propget]
+ long DataSize([in] long Field);
+ [id(DISPID_RECORD_CLEARDATA)]
+ void ClearData();
+ [id(DISPID_RECORD_FORMATTEXT)]
+ BSTR FormatText();
+ };
- [ uuid(000C109A-0000-0000-C000-000000000046) ]
- dispinterface UIPreview
- {
+ typedef enum {
+ msiDoActionStatusNoAction = 0,
+ msiDoActionStatusSuccess = 1,
+ msiDoActionStatusUserExit = 2,
+ msiDoActionStatusFailure = 3,
+ msiDoActionStatusSuspend = 4,
+ msiDoActionStatusFinished = 5,
+ msiDoActionStatusWrongState = 6,
+ msiDoActionStatusBadActionData = 7
+ } MsiDoActionStatus;
+
+ typedef enum {
+ msiEvaluateConditionFalse = 0,
+ msiEvaluateConditionTrue = 1,
+ msiEvaluateConditionNone = 2,
+ msiEvaluateConditionError = 3
+ } _MsiEvaluateCondition; /* Added underscore to avoid conflict with function name */
+
+ typedef enum {
+ msiMessageStatusError = -1,
+ msiMessageStatusNone = 0,
+ msiMessageStatusOk = 1,
+ msiMessageStatusCancel = 2,
+ msiMessageStatusAbort = 3,
+ msiMessageStatusRetry = 4,
+ msiMessageStatusIgnore = 5,
+ msiMessageStatusYes = 6,
+ msiMessageStatusNo = 7
+ } MsiMessageStatus;
+
+ typedef enum {
+ msiMessageTypeFatalExit = 0,
+ msiMessageTypeError = 16777216,
+ msiMessageTypeWarning = 33554432,
+ msiMessageTypeUser = 50331648,
+ msiMessageTypeInfo = 67108864,
+ msiMessageTypeFilesInUse = 83886080,
+ msiMessageTypeResolveSource = 100663296,
+ msiMessageTypeOutOfDiskSpace = 117440512,
+ msiMessageTypeActionStart = 134217728,
+ msiMessageTypeActionData = 150994944,
+ msiMessageTypeProgress = 167772160,
+ msiMessageTypeCommonData = 184549376,
+ msiMessageTypeOk = 0,
+ msiMessageTypeOkCancel = 1,
+ msiMessageTypeAbortRetryIgnore = 2,
+ msiMessageTypeYesNoCancel = 3,
+ msiMessageTypeYesNo = 4,
+ msiMessageTypeRetryCancel = 5,
+ msiMessageTypeDefault1 = 0,
+ msiMessageTypeDefault2 = 256,
+ msiMessageTypeDefault3 = 512
+ } MsiMessageType;
+
+ typedef enum {
+ msiCostTreeSelfOnly = 0,
+ msiCostTreeChildren = 1,
+ msiCostTreeParents = 2
+ } MsiCostTree;
+
+ typedef enum {
+ msiDatabaseStateRead = 0,
+ msiDatabaseStateWrite = 1
+ } MsiDatabaseState;
+
+ [
+ uuid(000C109E-0000-0000-C000-000000000046),
+ helpcontext(0x000025e4)
+ ]
+ dispinterface Session {
properties:
methods:
- }
+ [id(DISPID_SESSION_INSTALLER), propget]
+ Installer* Installer();
+ [id(DISPID_SESSION_PROPERTY), propget]
+ BSTR Property([in] BSTR Name);
+ [id(DISPID_SESSION_PROPERTY), propput]
+ void Property(
+ [in] BSTR Name,
+ [in] BSTR rhs);
+ [id(DISPID_SESSION_LANGUAGE), propget]
+ long Language();
+ [id(DISPID_SESSION_MODE), propget]
+ VARIANT_BOOL Mode([in] MsiRunMode Flag);
+ [id(DISPID_SESSION_MODE), propput]
+ void Mode(
+ [in] MsiRunMode Flag,
+ [in] VARIANT_BOOL rhs);
+ [id(DISPID_SESSION_DATABASE), propget]
+ Database* Database();
+ [id(DISPID_SESSION_SOURCEPATH), propget]
+ BSTR SourcePath([in] BSTR Folder);
+ [id(DISPID_SESSION_TARGETPATH), propget]
+ BSTR TargetPath([in] BSTR Folder);
+ [id(DISPID_SESSION_TARGETPATH), propput]
+ void TargetPath(
+ [in] BSTR Folder,
+ [in] BSTR rhs);
+ [id(DISPID_SESSION_DOACTION)]
+ MsiDoActionStatus DoAction([in] BSTR Action);
+ [id(DISPID_SESSION_SEQUENCE)]
+ MsiDoActionStatus Sequence(
+ [in] BSTR Table,
+ [in, optional] VARIANT Mode);
+ [id(DISPID_SESSION_EVALUATECONDITION)]
+ _MsiEvaluateCondition EvaluateCondition([in] BSTR Expression);
+ [id(DISPID_SESSION_FORMATRECORD)]
+ BSTR FormatRecord([in] Record* Record);
+ [id(DISPID_SESSION_MESSAGE)]
+ MsiMessageStatus Message(
+ [in] MsiMessageType Kind,
+ [in] Record* Record);
+ [id(DISPID_SESSION_FEATURECURRENTSTATE), propget]
+ MsiInstallState FeatureCurrentState([in] BSTR Feature);
+ [id(DISPID_SESSION_FEATUREREQUESTSTATE), propget]
+ MsiInstallState FeatureRequestState([in] BSTR Feature);
+ [id(DISPID_SESSION_FEATUREREQUESTSTATE), propput]
+ void FeatureRequestState(
+ [in] BSTR Feature,
+ [in] MsiInstallState rhs);
+ [id(DISPID_SESSION_FEATUREVALIDSTATES), propget]
+ long FeatureValidStates([in] BSTR Feature);
+ [id(DISPID_SESSION_FEATURECOST), propget]
+ long FeatureCost(
+ [in] BSTR Feature,
+ [in] MsiCostTree CostTree,
+ [in] MsiInstallState State);
+ [id(DISPID_SESSION_COMPONENTCURRENTSTATE), propget]
+ MsiInstallState ComponentCurrentState([in] BSTR Component);
+ [id(DISPID_SESSION_COMPONENTREQUESTSTATE), propget]
+ MsiInstallState ComponentRequestState([in] BSTR Component);
+ [id(DISPID_SESSION_COMPONENTREQUESTSTATE), propput]
+ void ComponentRequestState(
+ [in] BSTR Component,
+ [in] MsiInstallState rhs);
+ [id(DISPID_SESSION_SETINSTALLLEVEL)]
+ void SetInstallLevel([in] long Level);
+ [id(DISPID_SESSION_VERIFYDISKSPACE), propget]
+ VARIANT_BOOL VerifyDiskSpace();
+ [id(DISPID_SESSION_PRODUCTPROPERTY), propget]
+ BSTR ProductProperty([in] BSTR Property);
+ [id(DISPID_SESSION_FEATUREINFO), propget]
+ FeatureInfo* FeatureInfo([in] BSTR Feature);
+ [id(DISPID_SESSION_COMPONENTCOSTS), propget]
+ RecordList* ComponentCosts(
+ [in] BSTR Component,
+ [in] MsiInstallState State);
+ };
+
+ typedef enum {
+ msiTransformErrorNone = 0,
+ msiTransformErrorAddExistingRow = 1,
+ msiTransformErrorDeleteNonExistingRow = 2,
+ msiTransformErrorAddExistingTable = 4,
+ msiTransformErrorDeleteNonExistingTable = 8,
+ msiTransformErrorUpdateNonExistingRow = 16,
+ msiTransformErrorChangeCodePage = 32,
+ msiTransformErrorViewTransform = 256
+ } MsiTransformError;
+
+ typedef enum {
+ msiTransformValidationNone = 0,
+ msiTransformValidationLanguage = 1,
+ msiTransformValidationProduct = 2,
+ msiTransformValidationPlatform = 4,
+ msiTransformValidationMajorVer = 8,
+ msiTransformValidationMinorVer = 16,
+ msiTransformValidationUpdateVer = 32,
+ msiTransformValidationLess = 64,
+ msiTransformValidationLessOrEqual = 128,
+ msiTransformValidationEqual = 256,
+ msiTransformValidationGreaterOrEqual = 512,
+ msiTransformValidationGreater = 1024,
+ msiTransformValidationUpgradeCode = 2048
+ } MsiTransformValidation;
- [ uuid(000C109B-0000-0000-C000-000000000046) ]
- dispinterface SummaryInfo
- {
+ [
+ uuid(000C109D-0000-0000-C000-000000000046),
+ helpcontext(0x0000251c)
+ ]
+ dispinterface Database {
properties:
methods:
- }
+ [id(DISPID_DATABASE_DATABASESTATE), propget]
+ MsiDatabaseState DatabaseState();
+ [id(DISPID_DATABASE_SUMMARYINFORMATION), propget]
+ SummaryInfo* SummaryInformation([in, optional, defaultvalue(0)] long UpdateCount);
+ [id(DISPID_DATABASE_OPENVIEW)]
+ View* OpenView([in] BSTR Sql);
+ [id(DISPID_DATABASE_COMMIT)]
+ void Commit();
+ [id(DISPID_DATABASE_PRIMARYKEYS), propget]
+ Record* PrimaryKeys([in] BSTR Table);
+ [id(DISPID_DATABASE_IMPORT)]
+ void Import(
+ [in] BSTR Folder,
+ [in] BSTR File);
+ [id(DISPID_DATABASE_EXPORT)]
+ void Export(
+ [in] BSTR Table,
+ [in] BSTR Folder,
+ [in] BSTR File);
+ [id(DISPID_DATABASE_MERGE)]
+ VARIANT_BOOL Merge(
+ [in] Database* Database,
+ [in, optional, defaultvalue("0")] BSTR ErrorTable);
+ [id(DISPID_DATABASE_GENERATETRANSFORM)]
+ VARIANT_BOOL GenerateTransform(
+ [in] Database* ReferenceDatabase,
+ [in, optional, defaultvalue("0")] BSTR TransformFile);
+ [id(DISPID_DATABASE_APPLYTRANSFORM)]
+ void ApplyTransform(
+ [in] BSTR TransformFile,
+ [in] MsiTransformError ErrorConditions);
+ [id(DISPID_DATABASE_ENABLEUIPREVIEW)]
+ UIPreview* EnableUIPreview();
+ [id(DISPID_DATABASE_TABLEPERSISTENT), propget]
+ _MsiEvaluateCondition TablePersistent([in] BSTR Table);
+ [id(DISPID_DATABASE_CREATETRANSFORMSUMMARYINFO)]
+ void CreateTransformSummaryInfo(
+ [in] Database* ReferenceDatabase,
+ [in] BSTR TransformFile,
+ [in] MsiTransformError ErrorConditions,
+ [in] MsiTransformValidation Validation);
+ };
- [ uuid(000C109C-0000-0000-C000-000000000046) ]
- dispinterface View
- {
+ [
+ uuid(000C109B-0000-0000-C000-000000000046),
+ helpcontext(0x00002580)
+ ]
+ dispinterface SummaryInfo {
properties:
methods:
- }
+ [id(DISPID_SUMMARYINFO_PROPERTY), propget]
+ VARIANT Property([in] long Pid);
+ [id(DISPID_SUMMARYINFO_PROPERTY), propput]
+ void Property(
+ [in] long Pid,
+ [in] VARIANT rhs);
+ [id(DISPID_SUMMARYINFO_PROPERTYCOUNT), propget]
+ long PropertyCount();
+ [id(DISPID_SUMMARYINFO_PERSIST)]
+ void Persist();
+ };
- [ uuid(000C109D-0000-0000-C000-000000000046) ]
- dispinterface Database
- {
+ typedef enum {
+ msiViewModifySeek = -1,
+ msiViewModifyRefresh = 0,
+ msiViewModifyInsert = 1,
+ msiViewModifyUpdate = 2,
+ msiViewModifyAssign = 3,
+ msiViewModifyReplace = 4,
+ msiViewModifyMerge = 5,
+ msiViewModifyDelete = 6,
+ msiViewModifyInsertTemporary = 7,
+ msiViewModifyValidate = 8,
+ msiViewModifyValidateNew = 9,
+ msiViewModifyValidateField = 10,
+ msiViewModifyValidateDelete = 11
+ } _MsiViewModify; /* Added underscore to avoid conflict with MsiViewModify function in msiquery.h */
+
+ typedef enum {
+ msiColumnInfoNames = 0,
+ msiColumnInfoTypes = 1
+ } MsiColumnInfo;
+
+ [
+ uuid(000C109C-0000-0000-C000-000000000046),
+ helpcontext(0x000024b8)
+ ]
+ dispinterface View {
+ properties:
+ methods:
+ [id(DISPID_VIEW_EXECUTE)]
+ void Execute([in, optional, defaultvalue(0)] Record* Params);
+ [id(DISPID_VIEW_FETCH)]
+ Record* Fetch();
+ [id(DISPID_VIEW_MODIFY)]
+ void Modify(
+ [in] _MsiViewModify Mode,
+ Record* Record);
+ [id(DISPID_VIEW_COLUMNINFO), propget]
+ Record* ColumnInfo([in] MsiColumnInfo Info);
+ [id(DISPID_VIEW_CLOSE)]
+ void Close();
+ [id(DISPID_VIEW_GETERROR)]
+ BSTR GetError();
+ };
+
+ [
+ uuid(000C109A-0000-0000-C000-000000000046),
+ helpcontext(0x00002648)
+ ]
+ dispinterface UIPreview {
+ properties:
+ methods:
+ [id(DISPID_UIPREVIEW_PROPERTY), propget]
+ BSTR Property([in] BSTR Name);
+ [id(DISPID_UIPREVIEW_PROPERTY), propput]
+ void Property(
+ [in] BSTR Name,
+ [in] BSTR rhs);
+ [id(DISPID_UIPREVIEW_VIEWDIALOG)]
+ void ViewDialog([in] BSTR Dialog);
+ [id(DISPID_UIPREVIEW_VIEWBILLBOARD)]
+ void ViewBillboard(
+ [in] BSTR Control,
+ [in] BSTR Billboard);
+ };
+
+ [
+ uuid(000C109F-0000-0000-C000-000000000046),
+ helpcontext(0x0000238c)
+ ]
+ dispinterface FeatureInfo {
properties:
+ [id(DISPID_FEATUREINFO_ATTRIBUTES)]
+ long Attributes;
methods:
- }
-
- [ uuid(000C109E-0000-0000-C000-000000000046) ]
- dispinterface Session
- {
- properties:
- methods:
- }
-
- [ uuid(000C109F-0000-0000-C000-000000000046) ]
- dispinterface FeatureInfo
- {
+ [id(DISPID_FEATUREINFO_TITLE), propget]
+ BSTR Title();
+ [id(DISPID_FEATUREINFO_DESCRIPTION), propget]
+ BSTR Description();
+ };
+
+ [
+ uuid(000C1096-0000-0000-C000-000000000046),
+ helpcontext(0x000023f3)
+ ]
+ dispinterface RecordList {
+ properties:
+ methods:
+ [id(DISPID_RECORDLIST__NEWENUM)]
+ IUnknown _NewEnum();
+ [id(DISPID_RECORDLIST_ITEM), propget]
+ Record* Item(long Index);
+ [id(DISPID_RECORDLIST_COUNT), propget]
+ long Count();
+ };
+
+ [
+ uuid(000C1095-0000-0000-C000-000000000046),
+ helpcontext(0x000023f0)
+ ]
+ dispinterface StringList {
properties:
methods:
- }
+ [id(DISPID_STRINGLIST__NEWENUM)]
+ IUnknown _NewEnum();
+ [id(DISPID_STRINGLIST_ITEM), propget]
+ BSTR Item(long Index);
+ [id(DISPID_STRINGLIST_COUNT), propget]
+ long Count();
+ };
- [ uuid(000C10A0-0000-0000-C000-000000000046) ]
- dispinterface Product
- {
+ typedef enum {
+ msiInstallSourceTypeUnknown = 0,
+ msiInstallSourceTypeNetwork = 1,
+ msiInstallSourceTypeURL = 2,
+ msiInstallSourceTypeMedia = 4
+ } MsiInstallSourceType;
+
+ [
+ uuid(000C10A0-0000-0000-C000-000000000046),
+ helpcontext(0x00002396)
+ ]
+ dispinterface Product {
properties:
methods:
- }
+ [id(DISPID_PRODUCT_PRODUCTCODE), propget]
+ BSTR ProductCode();
+ [id(DISPID_PRODUCT_USERSID), propget]
+ BSTR UserSid();
+ [id(DISPID_PRODUCT_CONTEXT), propget]
+ MsiInstallContext Context();
+ [id(DISPID_PRODUCT_STATE), propget]
+ MsiInstallState State();
+ [id(DISPID_PRODUCT_INSTALLPROPERTY), propget]
+ BSTR InstallProperty([in] BSTR Name);
+ [id(DISPID_PRODUCT_COMPONENTSTATE), propget]
+ MsiInstallState ComponentState([in] BSTR Component);
+ [id(DISPID_PRODUCT_FEATURESTATE), propget]
+ MsiInstallState FeatureState([in] BSTR Feature);
+ [id(DISPID_PRODUCT_SOURCES), propget]
+ StringList* Sources([in] long SourceType);
+ [id(DISPID_PRODUCT_MEDIADISKS), propget]
+ RecordList* MediaDisks();
+ [id(DISPID_PRODUCT_SOURCELISTADDSOURCE)]
+ void SourceListAddSource(
+ [in] MsiInstallSourceType iSourceType,
+ [in] BSTR Source,
+ [in] long dwIndex);
+ [id(DISPID_PRODUCT_SOURCELISTADDMEDIADISK)]
+ void SourceListAddMediaDisk(
+ [in] long dwDiskId,
+ [in] BSTR VolumeLabel,
+ [in] BSTR DiskPrompt);
+ [id(DISPID_PRODUCT_SOURCELISTCLEARSOURCE)]
+ void SourceListClearSource(
+ [in] MsiInstallSourceType iSourceType,
+ [in] BSTR Source);
+ [id(DISPID_PRODUCT_SOURCELISTCLEARMEDIADISK)]
+ void SourceListClearMediaDisk([in] long iDiskId);
+ [id(DISPID_PRODUCT_SOURCELISTCLEARALL)]
+ void SourceListClearAll([in] MsiInstallSourceType iSourceType);
+ [id(DISPID_PRODUCT_SOURCELISTFORCERESOLUTION)]
+ void SourceListForceResolution();
+ [id(DISPID_PRODUCT_SOURCELISTINFO), propget]
+ BSTR SourceListInfo([in] BSTR Property);
+ [id(DISPID_PRODUCT_SOURCELISTINFO), propput]
+ void SourceListInfo(
+ [in] BSTR Property,
+ [in] BSTR retval);
+ };
- [ uuid(000C10A1-0000-0000-C000-000000000046) ]
- dispinterface Patch
- {
+ [
+ uuid(000C10A1-0000-0000-C000-000000000046),
+ helpcontext(0x000023aa)
+ ]
+ dispinterface Patch {
properties:
methods:
- }
-}
+ [id(DISPID_PATCH_PATCHCODE), propget]
+ BSTR PatchCode();
+ [id(DISPID_PATCH_PRODUCTCODE), propget]
+ BSTR ProductCode();
+ [id(DISPID_PATCH_USERSID), propget]
+ BSTR UserSid();
+ [id(DISPID_PATCH_CONTEXT), propget]
+ MsiInstallContext Context();
+ [id(DISPID_PATCH_STATE), propget]
+ MsiInstallState State();
+ [id(DISPID_PATCH_SOURCES), propget]
+ StringList* Sources([in] long SourceType);
+ [id(DISPID_PATCH_MEDIADISKS), propget]
+ RecordList* MediaDisks();
+ [id(DISPID_PATCH_SOURCELISTADDSOURCE)]
+ void SourceListAddSource(
+ [in] MsiInstallSourceType iSourceType,
+ [in] BSTR Source,
+ [in] long dwIndex);
+ [id(DISPID_PATCH_SOURCELISTADDMEDIADISK)]
+ void SourceListAddMediaDisk(
+ [in] long dwDiskId,
+ [in] BSTR VolumeLabel,
+ [in] BSTR DiskPrompt);
+ [id(DISPID_PATCH_SOURCELISTCLEARSOURCE)]
+ void SourceListClearSource(
+ [in] MsiInstallSourceType iSourceType,
+ [in] BSTR Source);
+ [id(DISPID_PATCH_SOURCELISTCLEARMEDIADISK)]
+ void SourceListClearMediaDisk([in] long iDiskId);
+ [id(DISPID_PATCH_SOURCELISTCLEARALL)]
+ void SourceListClearAll([in] MsiInstallSourceType iSourceType);
+ [id(DISPID_PATCH_SOURCELISTFORCERESOLUTION)]
+ void SourceListForceResolution();
+ [id(DISPID_PATCH_SOURCELISTINFO), propget]
+ BSTR SourceListInfo([in] BSTR Property);
+ [id(DISPID_PATCH_SOURCELISTINFO), propput]
+ void SourceListInfo(
+ [in] BSTR Property,
+ [in] BSTR retval);
+ [id(DISPID_PATCH_PATCHPROPERTY), propget]
+ BSTR PatchProperty([in] BSTR Property);
+ };
+
+ typedef enum {
+ msiDatabaseNullInteger = -2147483648
+ } Constants;
+
+ typedef enum {
+ msiOpenDatabaseModeReadOnly = 0,
+ msiOpenDatabaseModeTransact = 1,
+ msiOpenDatabaseModeDirect = 2,
+ msiOpenDatabaseModeCreate = 3,
+ msiOpenDatabaseModeCreateDirect = 4,
+ msiOpenDatabaseModePatchFile = 32
+ } MsiOpenDatabaseMode;
+
+ typedef enum {
+ msiSignatureOptionInvalidHashFatal = 1
+ } MsiSignatureOption;
+};
diff --git a/dlls/msi/msiserver_dispids.h b/dlls/msi/msiserver_dispids.h
new file mode 100644
index 0000000..093efb0
--- /dev/null
+++ b/dlls/msi/msiserver_dispids.h
@@ -0,0 +1,180 @@
+/*
+ * Copyright (C) 2007 Misha Koshelev
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+
+#define DISPID_INSTALLER_UILEVEL 6
+#define DISPID_INSTALLER_CREATERECORD 1
+#define DISPID_INSTALLER_OPENPACKAGE 2
+#define DISPID_INSTALLER_OPENPRODUCT 3
+#define DISPID_INSTALLER_OPENDATABASE 4
+#define DISPID_INSTALLER_SUMMARYINFORMATION 5
+#define DISPID_INSTALLER_ENABLELOG 7
+#define DISPID_INSTALLER_INSTALLPRODUCT 8
+#define DISPID_INSTALLER_VERSION 9
+#define DISPID_INSTALLER_LASTERRORRECORD 10
+#define DISPID_INSTALLER_REGISTRYVALUE 11
+#define DISPID_INSTALLER_FILEATTRIBUTES 13
+#define DISPID_INSTALLER_FILESIZE 15
+#define DISPID_INSTALLER_FILEVERSION 16
+#define DISPID_INSTALLER_ENVIRONMENT 12
+#define DISPID_INSTALLER_PRODUCTSTATE 17
+#define DISPID_INSTALLER_PRODUCTINFO 18
+#define DISPID_INSTALLER_CONFIGUREPRODUCT 19
+#define DISPID_INSTALLER_REINSTALLPRODUCT 20
+#define DISPID_INSTALLER_COLLECTUSERINFO 21
+#define DISPID_INSTALLER_APPLYPATCH 22
+#define DISPID_INSTALLER_FEATUREPARENT 23
+#define DISPID_INSTALLER_FEATURESTATE 24
+#define DISPID_INSTALLER_USEFEATURE 25
+#define DISPID_INSTALLER_FEATUREUSAGECOUNT 26
+#define DISPID_INSTALLER_FEATUREUSAGEDATE 27
+#define DISPID_INSTALLER_CONFIGUREFEATURE 28
+#define DISPID_INSTALLER_REINSTALLFEATURE 29
+#define DISPID_INSTALLER_PROVIDECOMPONENT 30
+#define DISPID_INSTALLER_COMPONENTPATH 31
+#define DISPID_INSTALLER_PROVIDEQUALIFIEDCOMPONENT 32
+#define DISPID_INSTALLER_QUALIFIERDESCRIPTION 33
+#define DISPID_INSTALLER_COMPONENTQUALIFIERS 34
+#define DISPID_INSTALLER_PRODUCTS 35
+#define DISPID_INSTALLER_FEATURES 36
+#define DISPID_INSTALLER_COMPONENTS 37
+#define DISPID_INSTALLER_COMPONENTCLIENTS 38
+#define DISPID_INSTALLER_PATCHES 39
+#define DISPID_INSTALLER_RELATEDPRODUCTS 40
+#define DISPID_INSTALLER_PATCHINFO 41
+#define DISPID_INSTALLER_PATCHTRANSFORMS 42
+#define DISPID_INSTALLER_ADDSOURCE 43
+#define DISPID_INSTALLER_CLEARSOURCELIST 44
+#define DISPID_INSTALLER_FORCESOURCELISTRESOLUTION 45
+#define DISPID_INSTALLER_GETSHORTCUTTARGET 46
+#define DISPID_INSTALLER_FILEHASH 47
+#define DISPID_INSTALLER_FILESIGNATUREINFO 48
+#define DISPID_INSTALLER_REMOVEPATCHES 49
+#define DISPID_INSTALLER_APPLYMULTIPLEPATCHES 51
+#define DISPID_INSTALLER_PRODUCT 53
+#define DISPID_INSTALLER_PATCH 56
+#define DISPID_INSTALLER_PRODUCTSEX 52
+#define DISPID_INSTALLER_PATCHESEX 55
+#define DISPID_INSTALLER_EXTRACTPATCHXMLDATA 57
+
+#define DISPID_RECORD_STRINGDATA 1
+#define DISPID_RECORD_INTEGERDATA 2
+#define DISPID_RECORD_SETSTREAM 3
+#define DISPID_RECORD_READSTREAM 4
+#define DISPID_RECORD_FIELDCOUNT 0
+#define DISPID_RECORD_ISNULL 6
+#define DISPID_RECORD_DATASIZE 5
+#define DISPID_RECORD_CLEARDATA 7
+#define DISPID_RECORD_FORMATTEXT 8
+
+#define DISPID_SESSION_INSTALLER 1
+#define DISPID_SESSION_PROPERTY 2
+#define DISPID_SESSION_LANGUAGE 3
+#define DISPID_SESSION_MODE 4
+#define DISPID_SESSION_DATABASE 5
+#define DISPID_SESSION_SOURCEPATH 6
+#define DISPID_SESSION_TARGETPATH 7
+#define DISPID_SESSION_DOACTION 8
+#define DISPID_SESSION_SEQUENCE 9
+#define DISPID_SESSION_EVALUATECONDITION 10
+#define DISPID_SESSION_FORMATRECORD 11
+#define DISPID_SESSION_MESSAGE 12
+#define DISPID_SESSION_FEATURECURRENTSTATE 13
+#define DISPID_SESSION_FEATUREREQUESTSTATE 14
+#define DISPID_SESSION_FEATUREVALIDSTATES 15
+#define DISPID_SESSION_FEATURECOST 16
+#define DISPID_SESSION_COMPONENTCURRENTSTATE 17
+#define DISPID_SESSION_COMPONENTREQUESTSTATE 18
+#define DISPID_SESSION_SETINSTALLLEVEL 19
+#define DISPID_SESSION_VERIFYDISKSPACE 20
+#define DISPID_SESSION_PRODUCTPROPERTY 21
+#define DISPID_SESSION_FEATUREINFO 22
+#define DISPID_SESSION_COMPONENTCOSTS 23
+
+#define DISPID_DATABASE_DATABASESTATE 1
+#define DISPID_DATABASE_SUMMARYINFORMATION 2
+#define DISPID_DATABASE_OPENVIEW 3
+#define DISPID_DATABASE_COMMIT 4
+#define DISPID_DATABASE_PRIMARYKEYS 5
+#define DISPID_DATABASE_IMPORT 6
+#define DISPID_DATABASE_EXPORT 7
+#define DISPID_DATABASE_MERGE 8
+#define DISPID_DATABASE_GENERATETRANSFORM 9
+#define DISPID_DATABASE_APPLYTRANSFORM 10
+#define DISPID_DATABASE_ENABLEUIPREVIEW 11
+#define DISPID_DATABASE_TABLEPERSISTENT 12
+#define DISPID_DATABASE_CREATETRANSFORMSUMMARYINFO 13
+
+#define DISPID_SUMMARYINFO_PROPERTY 1
+#define DISPID_SUMMARYINFO_PROPERTYCOUNT 2
+#define DISPID_SUMMARYINFO_PERSIST 3
+
+#define DISPID_VIEW_EXECUTE 1
+#define DISPID_VIEW_FETCH 2
+#define DISPID_VIEW_MODIFY 3
+#define DISPID_VIEW_COLUMNINFO 5
+#define DISPID_VIEW_CLOSE 4
+#define DISPID_VIEW_GETERROR 6
+
+#define DISPID_UIPREVIEW_PROPERTY 1
+#define DISPID_UIPREVIEW_VIEWDIALOG 2
+#define DISPID_UIPREVIEW_VIEWBILLBOARD 3
+
+#define DISPID_FEATUREINFO_ATTRIBUTES 3
+#define DISPID_FEATUREINFO_TITLE 1
+#define DISPID_FEATUREINFO_DESCRIPTION 2
+
+#define DISPID_RECORDLIST__NEWENUM -4
+#define DISPID_RECORDLIST_ITEM 0
+#define DISPID_RECORDLIST_COUNT 1
+
+#define DISPID_STRINGLIST__NEWENUM -4
+#define DISPID_STRINGLIST_ITEM 0
+#define DISPID_STRINGLIST_COUNT 1
+
+#define DISPID_PRODUCT_PRODUCTCODE 1
+#define DISPID_PRODUCT_USERSID 2
+#define DISPID_PRODUCT_CONTEXT 3
+#define DISPID_PRODUCT_STATE 4
+#define DISPID_PRODUCT_INSTALLPROPERTY 5
+#define DISPID_PRODUCT_COMPONENTSTATE 6
+#define DISPID_PRODUCT_FEATURESTATE 7
+#define DISPID_PRODUCT_SOURCES 14
+#define DISPID_PRODUCT_MEDIADISKS 15
+#define DISPID_PRODUCT_SOURCELISTADDSOURCE 8
+#define DISPID_PRODUCT_SOURCELISTADDMEDIADISK 9
+#define DISPID_PRODUCT_SOURCELISTCLEARSOURCE 10
+#define DISPID_PRODUCT_SOURCELISTCLEARMEDIADISK 11
+#define DISPID_PRODUCT_SOURCELISTCLEARALL 12
+#define DISPID_PRODUCT_SOURCELISTFORCERESOLUTION 13
+#define DISPID_PRODUCT_SOURCELISTINFO 16
+
+#define DISPID_PATCH_PATCHCODE 1
+#define DISPID_PATCH_PRODUCTCODE 2
+#define DISPID_PATCH_USERSID 3
+#define DISPID_PATCH_CONTEXT 4
+#define DISPID_PATCH_STATE 5
+#define DISPID_PATCH_SOURCES 12
+#define DISPID_PATCH_MEDIADISKS 13
+#define DISPID_PATCH_SOURCELISTADDSOURCE 6
+#define DISPID_PATCH_SOURCELISTADDMEDIADISK 7
+#define DISPID_PATCH_SOURCELISTCLEARSOURCE 8
+#define DISPID_PATCH_SOURCELISTCLEARMEDIADISK 9
+#define DISPID_PATCH_SOURCELISTCLEARALL 10
+#define DISPID_PATCH_SOURCELISTFORCERESOLUTION 11
+#define DISPID_PATCH_SOURCELISTINFO 14
+#define DISPID_PATCH_PATCHPROPERTY 15
--
1.4.1
More information about the wine-patches
mailing list