' ########################################################################################
' Microsoft Windows
' File: ComAdmin.inc
' Library name: COMAdmin
' Version: 1.0, Locale ID = 0
' Library GUID: {F618C513-DFB8-11D1-A2CF-00805FC79235}
' Path: C:\WINDOWS\system32\Com\comadmin.dll
' Contents: COM + 1.0 Admin Type Library
' Copyright (c) 2011 Jos? Roca
' Portions Copyright (c) Microsoft Corporation.
' All Rights Reserved.
' THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER
' EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
' MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
' ########################################################################################
#IF NOT %DEF(PBX_ComAdmin_PBI)
#DEFINE PBX_ComAdmin_PBI
%EQUATE `COMADMIN_INC = 1
'/* header files for imported files */
#INCLUDE ONCE "Legacy/COM/Unknwn.inc"
#INCLUDE ONCE "Legacy/COM/OAIdl.inc"
#INCLUDE ONCE "Legacy/System/ObjBase.inc"
$LIBID_COMAdmin = GUID$("{F618C513-DFB8-11D1-A2CF-00805FC79235}")
' ========================================================================================
' ProgIDs (Program identifiers)
' ========================================================================================
' CLSID = {F618C514-DFB8-11D1-A2CF-00805FC79235}
$PROGID_COMAdminCatalog1 = "COMAdmin.COMAdminCatalog.1"
' ========================================================================================
' Version independent ProgIDs
' ========================================================================================
' CLSID = {F618C514-DFB8-11D1-A2CF-00805FC79235}
$PROGID_COMAdminCatalog = "COMAdmin.COMAdminCatalog"
' ========================================================================================
' ClsIDs (Class identifiers)
' ========================================================================================
$CLSID_COMAdminCatalogCollection = GUID$("{F618C516-DFB8-11D1-A2CF-00805FC79235}")
$CLSID_COMAdminCatalogObject = GUID$("{F618C515-DFB8-11D1-A2CF-00805FC79235}")
$CLSID_COMAdminCatalog = GUID$("{F618C514-DFB8-11D1-A2CF-00805FC79235}")
' ========================================================================================
' IIDs (Interface identifiers)
' ========================================================================================
$IID_COMAdmin_ICatalogCollection = GUID$("{6EB22872-8A19-11D0-81B6-00A0C9231C29}")
$IID_COMAdmin_ICatalogObject = GUID$("{6EB22871-8A19-11D0-81B6-00A0C9231C29}")
$IID_COMAdmin_ICOMAdminCatalog = GUID$("{DD662187-DFC2-11D1-A2CF-00805FC79235}")
$IID_COMAdmin_ICOMAdminCatalog2 = GUID$("{790C6E0B-9194-4CC9-9426-A48A63185696}")
' ########################################################################################
' Interface name = ICOMAdminCatalog
' IID = {DD662187-DFC2-11D1-A2CF-00805FC79235}
' Attributes = 4160 [&H1040] [Dual] [Dispatchable]
' Inherited interface = IDispatch
' ########################################################################################
#IF NOT %DEF(%COMAdmin_ICOMAdminCatalog_INTERFACE_DEFINED)
 %COMAdmin_ICOMAdminCatalog_INTERFACE_DEFINED = 1
INTERFACE COMAdmin_ICOMAdminCatalog $IID_COMAdmin_ICOMAdminCatalog
 INHERIT IDispatch
 ' =====================================================================================
 METHOD GetCollection <1> ( ' VTable offset = 28
 BYVAL bstrCollName AS WSTRING
 ) AS IDispatch
 ' =====================================================================================
 METHOD Connect <2> ( ' VTable offset = 32
 BYVAL bstrCatalogServerName AS WSTRING
 ) AS IDispatch
 ' =====================================================================================
 PROPERTY GET MajorVersion <3> ( ' VTable offset = 36
 ) AS LONG
 ' =====================================================================================
 PROPERTY GET MinorVersion <4> ( ' VTable offset = 40
 ) AS LONG
 ' =====================================================================================
 METHOD GetCollectionByQuery <5> ( ' VTable offset = 44
 BYVAL bstrCollName AS WSTRING
 , BYVAL ppsaVarQuery AS DWORD
 ) AS IDispatch
 ' =====================================================================================
 METHOD ImportComponent <6> ( ' VTable offset = 48
 BYVAL bstrApplIDOrName AS WSTRING
 , BYVAL bstrCLSIDOrProgID AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD InstallComponent <7> ( ' VTable offset = 52
 BYVAL bstrApplIDOrName AS WSTRING
 , BYVAL bstrDLL AS WSTRING
 , BYVAL bstrTLB AS WSTRING
 , BYVAL bstrPSDLL AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD ShutdownApplication <8> ( ' VTable offset = 56
 BYVAL bstrApplIDOrName AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD ExportApplication <9> ( ' VTable offset = 60
 BYVAL bstrApplIDOrName AS WSTRING
 , BYVAL bstrApplicationFile AS WSTRING
 , BYVAL lOptions AS LONG
 ) ' void
 ' =====================================================================================
 METHOD InstallApplication <10> ( ' VTable offset = 64
 BYVAL bstrApplicationFile AS WSTRING
 , OPTIONAL BYVAL bstrDestinationDirectory AS WSTRING
 , OPTIONAL BYVAL lOptions AS LONG
 , OPTIONAL BYVAL bstrUserId AS WSTRING
 , OPTIONAL BYVAL bstrPassword AS WSTRING
 , OPTIONAL BYVAL bstrRSN AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD StopRouter <11> ( ' VTable offset = 68
 ) ' void
 ' =====================================================================================
 METHOD RefreshRouter <12> ( ' VTable offset = 72
 ) ' void
 ' =====================================================================================
 METHOD StartRouter <13> ( ' VTable offset = 76
 ) ' void
 ' =====================================================================================
 METHOD Reserved1 <14> ( ' VTable offset = 80
 ) ' void
 ' =====================================================================================
 METHOD Reserved2 <15> ( ' VTable offset = 84
 ) ' void
 ' =====================================================================================
 METHOD InstallMultipleComponents <16> ( ' VTable offset = 88
 BYVAL bstrApplIDOrName AS WSTRING
 , BYVAL ppsaVarFileNames AS DWORD
 , BYVAL ppsaVarCLSIDs AS DWORD
 ) ' void
 ' =====================================================================================
 METHOD GetMultipleComponentsInfo <17> ( ' VTable offset = 92
 BYVAL bstrApplIdOrName AS WSTRING
 , BYVAL ppsaVarFileNames AS DWORD
 , BYREF ppsaVarCLSIDs AS DWORD
 , BYREF ppsaVarClassNames AS DWORD
 , BYREF ppsaVarFileFlags AS DWORD
 , BYREF ppsaVarComponentFlags AS DWORD
 ) ' void
 ' =====================================================================================
 METHOD RefreshComponents <18> ( ' VTable offset = 96
 ) ' void
 ' =====================================================================================
 METHOD BackupREGDB <19> ( ' VTable offset = 100
 BYVAL bstrBackupFilePath AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD RestoreREGDB <20> ( ' VTable offset = 104
 BYVAL bstrBackupFilePath AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD QueryApplicationFile <21> ( ' VTable offset = 108
 BYVAL bstrApplicationFile AS WSTRING
 , BYREF pbstrApplicationName AS WSTRING
 , BYREF pbstrApplicationDescription AS WSTRING
 , BYREF pbHasUsers AS INTEGER
 , BYREF pbIsProxy AS INTEGER
 , BYREF ppsaVarFileNames AS DWORD
 ) ' void
 ' =====================================================================================
 METHOD StartApplication <22> ( ' VTable offset = 112
 BYVAL bstrApplIdOrName AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD ServiceCheck <23> ( ' VTable offset = 116
 BYVAL lService AS LONG
 ) AS LONG
 ' =====================================================================================
 METHOD InstallMultipleEventClasses <24> ( ' VTable offset = 120
 BYVAL bstrApplIdOrName AS WSTRING
 , BYVAL ppsaVarFileNames AS DWORD
 , BYVAL ppsaVarCLSIDS AS DWORD
 ) ' void
 ' =====================================================================================
 METHOD InstallEventClass <25> ( ' VTable offset = 124
 BYVAL bstrApplIdOrName AS WSTRING
 , BYVAL bstrDLL AS WSTRING
 , BYVAL bstrTLB AS WSTRING
 , BYVAL bstrPSDLL AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD GetEventClassesForIID <26> ( ' VTable offset = 128
 BYVAL bstrIID AS WSTRING
 , BYREF ppsaVarCLSIDs AS WORD
 , BYREF ppsaVarProgIDs AS DWORD
 , BYREF ppsaVarDescriptions AS DWORD
 ) ' void
 ' =====================================================================================
END INTERFACE
#ENDIF ' /* __COMAdmin_ICOMAdminCatalog_INTERFACE_DEFINED__ */
' enum COMAdminInUse
%EQUATE `COMAdminNotInUse = 0
%EQUATE `COMAdminInUseByCatalog = &H1
%EQUATE `COMAdminInUseByRegistryUnknown = &H2
%EQUATE `COMAdminInUseByRegistryProxyStub = &H3
%EQUATE `COMAdminInUseByRegistryTypeLib = &H4
%EQUATE `COMAdminInUseByRegistryClsid = &H5
' ########################################################################################
' Interface name = ICOMAdminCatalog2
' IID = {790C6E0B-9194-4CC9-9426-A48A63185696}
' Attributes = 4160 [&H1040] [Dual] [Dispatchable]
' Inherited interface = ICOMAdminCatalog
' ########################################################################################
#IF NOT %DEF(%COMAdmin_ICOMAdminCatalog2_INTERFACE_DEFINED)
 %COMAdmin_ICOMAdminCatalog2_INTERFACE_DEFINED = 1
INTERFACE COMAdmin_ICOMAdminCatalog2 $IID_COMAdmin_ICOMAdminCatalog2
 INHERIT IDispatch
 ' =====================================================================================
 ' ICOMAdminCatalog Methods
 ' =====================================================================================
 METHOD GetCollection <1> ( ' VTable offset = 28
 BYVAL bstrCollName AS WSTRING
 ) AS IDispatch
 ' =====================================================================================
 METHOD Connect <2> ( ' VTable offset = 32
 BYVAL bstrCatalogServerName AS WSTRING
 ) AS IDispatch
 ' =====================================================================================
 PROPERTY GET MajorVersion <3> ( ' VTable offset = 36
 ) AS LONG
 ' =====================================================================================
 PROPERTY GET MinorVersion <4> ( ' VTable offset = 40
 ) AS LONG
 ' =====================================================================================
 METHOD GetCollectionByQuery <5> ( ' VTable offset = 44
 BYVAL bstrCollName AS WSTRING
 , BYVAL ppsaVarQuery AS DWORD
 ) AS IDispatch
 ' =====================================================================================
 METHOD ImportComponent <6> ( ' VTable offset = 48
 BYVAL bstrApplIDOrName AS WSTRING
 , BYVAL bstrCLSIDOrProgID AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD InstallComponent <7> ( ' VTable offset = 52
 BYVAL bstrApplIDOrName AS WSTRING
 , BYVAL bstrDLL AS WSTRING
 , BYVAL bstrTLB AS WSTRING
 , BYVAL bstrPSDLL AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD ShutdownApplication <8> ( ' VTable offset = 56
 BYVAL bstrApplIDOrName AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD ExportApplication <9> ( ' VTable offset = 60
 BYVAL bstrApplIDOrName AS WSTRING
 , BYVAL bstrApplicationFile AS WSTRING
 , BYVAL lOptions AS LONG
 ) ' void
 ' =====================================================================================
 METHOD InstallApplication <10> ( ' VTable offset = 64
 BYVAL bstrApplicationFile AS WSTRING
 , OPTIONAL BYVAL bstrDestinationDirectory AS WSTRING
 , OPTIONAL BYVAL lOptions AS LONG
 , OPTIONAL BYVAL bstrUserId AS WSTRING
 , OPTIONAL BYVAL bstrPassword AS WSTRING
 , OPTIONAL BYVAL bstrRSN AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD StopRouter <11> ( ' VTable offset = 68
 ) ' void
 ' =====================================================================================
 METHOD RefreshRouter <12> ( ' VTable offset = 72
 ) ' void
 ' =====================================================================================
 METHOD StartRouter <13> ( ' VTable offset = 76
 ) ' void
 ' =====================================================================================
 METHOD Reserved1 <14> ( ' VTable offset = 80
 ) ' void
 ' =====================================================================================
 METHOD Reserved2 <15> ( ' VTable offset = 84
 ) ' void
 ' =====================================================================================
 METHOD InstallMultipleComponents <16> ( ' VTable offset = 88
 BYVAL bstrApplIDOrName AS WSTRING
 , BYVAL ppsaVarFileNames AS DWORD
 , BYVAL ppsaVarCLSIDs AS DWORD
 ) ' void
 ' =====================================================================================
 METHOD GetMultipleComponentsInfo <17> ( ' VTable offset = 92
 BYVAL bstrApplIdOrName AS WSTRING
 , BYVAL ppsaVarFileNames AS DWORD
 , BYREF ppsaVarCLSIDs AS DWORD
 , BYREF ppsaVarClassNames AS DWORD
 , BYREF ppsaVarFileFlags AS DWORD
 , BYREF ppsaVarComponentFlags AS DWORD
 ) ' void
 ' =====================================================================================
 METHOD RefreshComponents <18> ( ' VTable offset = 96
 ) ' void
 ' =====================================================================================
 METHOD BackupREGDB <19> ( ' VTable offset = 100
 BYVAL bstrBackupFilePath AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD RestoreREGDB <20> ( ' VTable offset = 104
 BYVAL bstrBackupFilePath AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD QueryApplicationFile <21> ( ' VTable offset = 108
 BYVAL bstrApplicationFile AS WSTRING
 , BYREF pbstrApplicationName AS WSTRING
 , BYREF pbstrApplicationDescription AS WSTRING
 , BYREF pbHasUsers AS INTEGER
 , BYREF pbIsProxy AS INTEGER
 , BYREF ppsaVarFileNames AS DWORD
 ) ' void
 ' =====================================================================================
 METHOD StartApplication <22> ( ' VTable offset = 112
 BYVAL bstrApplIdOrName AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD ServiceCheck <23> ( ' VTable offset = 116
 BYVAL lService AS LONG
 ) AS LONG
 ' =====================================================================================
 METHOD InstallMultipleEventClasses <24> ( ' VTable offset = 120
 BYVAL bstrApplIdOrName AS WSTRING
 , BYVAL ppsaVarFileNames AS DWORD
 , BYVAL ppsaVarCLSIDS AS DWORD
 ) ' void
 ' =====================================================================================
 METHOD InstallEventClass <25> ( ' VTable offset = 124
 BYVAL bstrApplIdOrName AS WSTRING
 , BYVAL bstrDLL AS WSTRING
 , BYVAL bstrTLB AS WSTRING
 , BYVAL bstrPSDLL AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD GetEventClassesForIID <26> ( ' VTable offset = 128
 BYVAL bstrIID AS WSTRING
 , BYREF ppsaVarCLSIDs AS WORD
 , BYREF ppsaVarProgIDs AS DWORD
 , BYREF ppsaVarDescriptions AS DWORD
 ) ' void
 ' =====================================================================================
 ' =====================================================================================
 ' ICOMAdminCatalog2 Methods
 ' =====================================================================================
 METHOD GetCollectionByQuery2 <27> ( ' VTable offset = 132
 BYVAL bstrCollectionName AS WSTRING
 , BYREF pVarQueryStrings AS VARIANT
 ) AS IDispatch
 ' =====================================================================================
 METHOD GetApplicationInstanceIDFromProcessID <28> ( ' VTable offset = 136
 BYVAL lProcessID AS LONG
 ) AS WSTRING
 ' =====================================================================================
 METHOD ShutdownApplicationInstances <29> ( ' VTable offset = 140
 BYREF pVarApplicationInstanceID AS VARIANT
 ) ' void
 ' =====================================================================================
 METHOD PauseApplicationInstances <30> ( ' VTable offset = 144
 BYREF pVarApplicationInstanceID AS VARIANT
 ) ' void
 ' =====================================================================================
 METHOD ResumeApplicationInstances <31> ( ' VTable offset = 148
 BYREF pVarApplicationInstanceID AS VARIANT
 ) ' void
 ' =====================================================================================
 METHOD RecycleApplicationInstances <32> ( ' VTable offset = 152
 BYREF pVarApplicationInstanceID AS VARIANT
 , BYVAL lReasonCode AS LONG
 ) ' void
 ' =====================================================================================
 METHOD AreApplicationInstancesPaused <33> ( ' VTable offset = 156
 BYREF pVarApplicationInstanceID AS VARIANT
 ) AS INTEGER
 ' =====================================================================================
 METHOD DumpApplicationInstance <34> ( ' VTable offset = 160
 BYVAL bstrApplicationInstanceID AS WSTRING
 , BYVAL bstrDirectory AS WSTRING
 , BYVAL lMaxImages AS LONG
 ) AS WSTRING
 ' =====================================================================================
 PROPERTY GET IsApplicationInstanceDumpSupported <35> ( ' VTable offset = 164
 ) AS INTEGER
 ' =====================================================================================
 METHOD CreateServiceForApplication <36> ( ' VTable offset = 168
 BYVAL bstrApplicationIDOrName AS WSTRING
 , BYVAL bstrServiceName AS WSTRING
 , BYVAL bstrStartType AS WSTRING
 , BYVAL bstrErrorControl AS WSTRING
 , BYVAL bstrDependencies AS WSTRING
 , BYVAL bstrRunAs AS WSTRING
 , BYVAL bstrPassword AS WSTRING
 , BYVAL bDesktopOk AS INTEGER
 ) ' void
 ' =====================================================================================
 METHOD DeleteServiceForApplication <37> ( ' VTable offset = 172
 BYVAL bstrApplicationIDOrName AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD GetPartitionID <38> ( ' VTable offset = 176
 BYVAL bstrApplicationIDOrName AS WSTRING
 ) AS WSTRING
 ' =====================================================================================
 METHOD GetPartitionName <39> ( ' VTable offset = 180
 BYVAL bstrApplicationIDOrName AS WSTRING
 ) AS WSTRING
 ' =====================================================================================
 PROPERTY SET CurrentPartition <40> ( ' VTable offset = 184
 BYVAL bstrPartitionIDOrName AS WSTRING
 ) ' void
 ' =====================================================================================
 PROPERTY GET CurrentPartitionID <41> ( ' VTable offset = 188
 ) AS WSTRING
 ' =====================================================================================
 PROPERTY GET CurrentPartitionName <42> ( ' VTable offset = 192
 ) AS WSTRING
 ' =====================================================================================
 PROPERTY GET GlobalPartitionID <43> ( ' VTable offset = 196
 ) AS WSTRING
 ' =====================================================================================
 METHOD FlushPartitionCache <44> ( ' VTable offset = 200
 ) ' void
 ' =====================================================================================
 METHOD CopyApplications <45> ( ' VTable offset = 204
 BYVAL bstrSourcePartitionIDOrName AS WSTRING
 , BYREF pVarApplicationID AS VARIANT
 , BYVAL bstrDestinationPartitionIDOrName AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD CopyComponents <46> ( ' VTable offset = 208
 BYVAL bstrSourceApplicationIDOrName AS WSTRING
 , BYREF pVarCLSIDOrProgID AS VARIANT
 , BYVAL bstrDestinationApplicationIDOrName AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD MoveComponents <47> ( ' VTable offset = 212
 BYVAL bstrSourceApplicationIDOrName AS WSTRING
 , BYREF pVarCLSIDOrProgID AS VARIANT
 , BYVAL bstrDestinationApplicationIDOrName AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD AliasComponent <48> ( ' VTable offset = 216
 BYVAL bstrSrcApplicationIDOrName AS WSTRING
 , BYVAL bstrCLSIDOrProgID AS WSTRING
 , BYVAL bstrDestApplicationIDOrName AS WSTRING
 , BYVAL bstrNewProgId AS WSTRING
 , BYVAL bstrNewClsid AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD IsSafeToDelete <49> ( ' VTable offset = 220
 BYVAL bstrDllName AS WSTRING
 ) AS LONG
 ' =====================================================================================
 METHOD ImportUnconfiguredComponents <50> ( ' VTable offset = 224
 BYVAL bstrApplicationIDOrName AS WSTRING
 , BYREF pVarCLSIDOrProgID AS VARIANT
 , OPTIONAL BYREF pVarComponentType AS VARIANT
 ) ' void
 ' =====================================================================================
 METHOD PromoteUnconfiguredComponents <51> ( ' VTable offset = 228
 BYVAL bstrApplicationIDOrName AS WSTRING
 , BYREF pVarCLSIDOrProgID AS VARIANT
 , OPTIONAL BYREF pVarComponentType AS VARIANT
 ) ' void
 ' =====================================================================================
 METHOD ImportComponents <52> ( ' VTable offset = 232
 BYVAL bstrApplicationIDOrName AS WSTRING
 , BYREF pVarCLSIDOrProgID AS VARIANT
 , OPTIONAL BYREF pVarComponentType AS VARIANT
 ) ' void
 ' =====================================================================================
 PROPERTY GET Is64BitCatalogServer <53> ( ' VTable offset = 236
 ) AS INTEGER
 ' =====================================================================================
 METHOD ExportPartition <54> ( ' VTable offset = 240
 BYVAL bstrPartitionIDOrName AS WSTRING
 , BYVAL bstrPartitionFileName AS WSTRING
 , BYVAL lOptions AS LONG
 ) ' void
 ' =====================================================================================
 METHOD InstallPartition <55> ( ' VTable offset = 244
 BYVAL bstrFileName AS WSTRING
 , BYVAL bstrDestDirectory AS WSTRING
 , BYVAL lOptions AS LONG
 , BYVAL bstrUserID AS WSTRING
 , BYVAL bstrPassword AS WSTRING
 , BYVAL bstrRSN AS WSTRING
 ) ' void
 ' =====================================================================================
 METHOD QueryApplicationFile2 <56> ( ' VTable offset = 248
 BYVAL bstrApplicationFile AS WSTRING
 ) AS IDispatch
 ' =====================================================================================
 METHOD GetComponentVersionCount <57> ( ' VTable offset = 252
 BYVAL bstrCLSIDOrProgID AS WSTRING
 ) AS LONG
 ' =====================================================================================
END INTERFACE
#ENDIF ' /* __COMAdmin_ICOMAdminCatalog2_INTERFACE_DEFINED__ */
' ########################################################################################
' Interface name = ICatalogObject
' IID = {6EB22871-8A19-11D0-81B6-00A0C9231C29}
' Attributes = 4160 [&H1040] [Dual] [Dispatchable]
' Inherited interface = IDispatch
' ########################################################################################
#IF NOT %DEF(%COMAdmin_ICatalogObject_INTERFACE_DEFINED)
 %COMAdmin_ICatalogObject_INTERFACE_DEFINED = 1
INTERFACE COMAdmin_ICatalogObject $IID_COMAdmin_ICatalogObject
 INHERIT IDispatch
 ' =====================================================================================
 PROPERTY GET Value <1> ( ' VTable offset = 28
 BYVAL bstrPropName AS WSTRING
 ) AS VARIANT
 ' =====================================================================================
 PROPERTY SET Value <1> ( ' VTable offset = 32
 BYVAL bstrPropName AS WSTRING
 , BYVAL val AS VARIANT
 ) ' void
 ' =====================================================================================
 PROPERTY GET Key <2> ( ' VTable offset = 36
 ) AS VARIANT
 ' =====================================================================================
 PROPERTY GET Name <3> ( ' VTable offset = 40
 ) AS VARIANT
 ' =====================================================================================
 METHOD IsPropertyReadOnly <4> ( ' VTable offset = 44
 BYVAL bstrPropName AS WSTRING
 ) AS INTEGER
 ' =====================================================================================
 PROPERTY GET Valid <5> ( ' VTable offset = 48
 ) AS INTEGER
 ' =====================================================================================
 METHOD IsPropertyWriteOnly <6> ( ' VTable offset = 52
 BYVAL bstrPropName AS WSTRING
 ) AS INTEGER
 ' =====================================================================================
END INTERFACE
#ENDIF ' /* __COMAdmin_ICatalogObject_INTERFACE_DEFINED__ */
' ########################################################################################
' Interface name = ICatalogCollection
' IID = {6EB22872-8A19-11D0-81B6-00A0C9231C29}
' COMAdmin_ICatalogCollection Interface
' Attributes = 4160 [&H1040] [Dual] [Dispatchable]
' Inherited interface = IDispatch
' ########################################################################################
#IF NOT %DEF(%COMAdmin_ICatalogCollection_INTERFACE_DEFINED)
 %COMAdmin_ICatalogCollection_INTERFACE_DEFINED = 1
INTERFACE COMAdmin_ICatalogCollection $IID_COMAdmin_ICatalogCollection
 INHERIT IDispatch
 ' =====================================================================================
 PROPERTY GET NewEnum_ <-4> ( ' VTable offset = 28
 ) AS IUnknown
 ' =====================================================================================
 PROPERTY GET Item <1> ( ' VTable offset = 32
 BYVAL lIndex AS LONG
 ) AS IDispatch
 ' =====================================================================================
 PROPERTY GET Count <1610743810> ( ' VTable offset = 36
 ) AS LONG
 ' =====================================================================================
 METHOD Remove <1610743811> ( ' VTable offset = 40
 BYVAL lIndex AS LONG
 ) ' void
 ' =====================================================================================
 METHOD Add <1610743812> ( ' VTable offset = 44
 ) AS IDispatch
 ' =====================================================================================
 METHOD Populate <2> ( ' VTable offset = 48
 ) ' void
 ' =====================================================================================
 METHOD SaveChanges <3> ( ' VTable offset = 52
 ) AS LONG
 ' =====================================================================================
 METHOD GetCollection <4> ( ' VTable offset = 56
 BYVAL bstrCollName AS WSTRING
 , BYVAL varObjectKey AS VARIANT
 ) AS IDispatch
 ' =====================================================================================
 PROPERTY GET Name <6> ( ' VTable offset = 60
 ) AS VARIANT
 ' =====================================================================================
 PROPERTY GET AddEnabled <7> ( ' VTable offset = 64
 ) AS INTEGER
 ' =====================================================================================
 PROPERTY GET RemoveEnabled <8> ( ' VTable offset = 68
 ) AS INTEGER
 ' =====================================================================================
 METHOD GetUtilInterface <9> ( ' VTable offset = 72
 ) AS IDispatch
 ' =====================================================================================
 PROPERTY GET DataStoreMajorVersion <10> ( ' VTable offset = 76
 ) AS LONG
 ' =====================================================================================
 PROPERTY GET DataStoreMinorVersion <11> ( ' VTable offset = 80
 ) AS LONG
 ' =====================================================================================
 METHOD PopulateByKey <12> ( ' VTable offset = 84
 BYVAL psaKeys AS DWORD
 ) ' void
 ' =====================================================================================
 METHOD PopulateByQuery <13> ( ' VTable offset = 88
 BYVAL bstrQueryString AS WSTRING
 , BYVAL lQueryType AS LONG
 ) ' void
 ' =====================================================================================
END INTERFACE
#ENDIF ' /* __COMAdmin_ICatalogCollection_INTERFACE_DEFINED__ */
' ========================================================================================
' COMAdminComponentType enum
' ComponentType values for ImportComponentAsLegacy
' ========================================================================================
%EQUATE `COMAdmin32BitComponent = &H1
%EQUATE `COMAdmin64BitComponent = &H2
' ========================================================================================
' COMAdminApplicationInstallOptions enum
' Application install options - these options can be or'ed together
' ========================================================================================
%EQUATE `COMAdminInstallNoUsers = 0
%EQUATE `COMAdminInstallUsers = 1
%EQUATE `COMAdminInstallForceOverwriteOfFiles = 2
' ========================================================================================
' COMAdminApplicationExportOptions enum
' Application export options - these options can be or'ed together
' ========================================================================================
%EQUATE `COMAdminExportNoUsers = 0
%EQUATE `COMAdminExportUsers = 1
%EQUATE `COMAdminExportApplicationProxy = 2
%EQUATE `COMAdminExportForceOverwriteOfFiles = 4
%EQUATE `COMAdminExportIn10Format = 16
' ========================================================================================
' COMAdminThreadingModels enum
' Threading Model Enumerations
' ========================================================================================
%EQUATE `COMAdminThreadingModelApartment = 0
%EQUATE `COMAdminThreadingModelFree = 1
%EQUATE `COMAdminThreadingModelMain = 2
%EQUATE `COMAdminThreadingModelBoth = 3
%EQUATE `COMAdminThreadingModelNeutral = 4
%EQUATE `COMAdminThreadingModelNotSpecified = 5
' ========================================================================================
' COMAdminTransactionOptions enum
' Transaction Settings Enumerations
' ========================================================================================
%EQUATE `COMAdminTransactionIgnored = 0
%EQUATE `COMAdminTransactionNone = 1
%EQUATE `COMAdminTransactionSupported = 2
%EQUATE `COMAdminTransactionRequired = 3
%EQUATE `COMAdminTransactionRequiresNew = 4
' ========================================================================================
' COMAdminTxIsolationLevelOptions enum
' Transaction Isolation Level Enumerations
' ========================================================================================
%EQUATE `COMAdminTxIsolationLevelAny = 0
%EQUATE `COMAdminTxIsolationLevelReadUnCommitted = %COMAdminTxIsolationLevelAny + 1
%EQUATE `COMAdminTxIsolationLevelReadCommitted = %COMAdminTxIsolationLevelReadUnCommitted + 1
%EQUATE `COMAdminTxIsolationLevelRepeatableRead = %COMAdminTxIsolationLevelReadCommitted + 1
%EQUATE `COMAdminTxIsolationLevelSerializable = %COMAdminTxIsolationLevelRepeatableRead + 1
' ========================================================================================
' COMAdminSynchronizationOptions enum
' Synchronization Settings Enumerations
' ========================================================================================
%EQUATE `COMAdminSynchronizationIgnored = 0
%EQUATE `COMAdminSynchronizationNone = 1
%EQUATE `COMAdminSynchronizationSupported = 2
%EQUATE `COMAdminSynchronizationRequired = 3
%EQUATE `COMAdminSynchronizationRequiresNew = 4
' ========================================================================================
' COMAdminActivationOptions enum
' Activation Settings Enumerations
' ========================================================================================
%EQUATE `COMAdminActivationInproc = 0
%EQUATE `COMAdminActivationLocal = 1
' ========================================================================================
' COMAdminAccessChecksLevelOptions enum
' Access Level Settings Enumerations
' ========================================================================================
%EQUATE `COMAdminAccessChecksApplicationLevel = 0
%EQUATE `COMAdminAccessChecksApplicationComponentLevel = 1
' ========================================================================================
' COMAdminAuthenticationLevelOptions enum
' Authentication Level Settings Enumerations
' ========================================================================================
%EQUATE `COMAdminAuthenticationDefault = 0
%EQUATE `COMAdminAuthenticationNone = 1
%EQUATE `COMAdminAuthenticationConnect = 2
%EQUATE `COMAdminAuthenticationCall = 3
%EQUATE `COMAdminAuthenticationPacket = 4
%EQUATE `COMAdminAuthenticationIntegrity = 5
%EQUATE `COMAdminAuthenticationPrivacy = 6
' ========================================================================================
' COMAdminImpersonationLevelOptions enum
' Impersonation Level Settings Enumerations
' ========================================================================================
%EQUATE `COMAdminImpersonationAnonymous = 1
%EQUATE `COMAdminImpersonationIdentify = 2
%EQUATE `COMAdminImpersonationImpersonate = 3
%EQUATE `COMAdminImpersonationDelegate = 4
' ========================================================================================
' COMAdminAuthenticationCapabilitiesOptions enum
' Authentication Capabilities Settings Enumerations
' ========================================================================================
%EQUATE `COMAdminAuthenticationCapabilitiesNone = 0
%EQUATE `COMAdminAuthenticationCapabilitiesSecureReference = &H2
%EQUATE `COMAdminAuthenticationCapabilitiesStaticCloaking = &H20
%EQUATE `COMAdminAuthenticationCapabilitiesDynamicCloaking = &H40
' ========================================================================================
' COMAdminOS enum
' Operating System Enumerations
' ========================================================================================
%EQUATE `COMAdminOSNotInitialized = 0
%EQUATE `COMAdminOSWindows3_1 = 1
%EQUATE `COMAdminOSWindows9x = 2
%EQUATE `COMAdminOSWindows2000 = 3
%EQUATE `COMAdminOSWindows2000AdvancedServer = 4
%EQUATE `COMAdminOSWindows2000Unknown = 5
%EQUATE `COMAdminOSUnknown = 6
%EQUATE `COMAdminOSWindowsXPPersonal = 11
%EQUATE `COMAdminOSWindowsXPProfessional = 12
%EQUATE `COMAdminOSWindowsNETStandardServer = 13
%EQUATE `COMAdminOSWindowsNETEnterpriseServer = 14
%EQUATE `COMAdminOSWindowsNETDatacenterServer = 15
%EQUATE `COMAdminOSWindowsNETWebServer = 16
%EQUATE `COMAdminOSWindowsLonghornPersonal = 17
%EQUATE `COMAdminOSWindowsLonghornProfessional = 18
%EQUATE `COMAdminOSWindowsLonghornStandardServer = 19
%EQUATE `COMAdminOSWindowsLonghornEnterpriseServer = 20
%EQUATE `COMAdminOSWindowsLonghornDatacenterServer = 21
%EQUATE `COMAdminOSWindowsLonghornWebServer = 22
%EQUATE `COMAdminOSWindows7Personal = 23
%EQUATE `COMAdminOSWindows7Professional = 24
%EQUATE `COMAdminOSWindows7StandardServer = 25
%EQUATE `COMAdminOSWindows7EnterpriseServer = 26
%EQUATE `COMAdminOSWindows7DatacenterServer = 27
%EQUATE `COMAdminOSWindows7WebServer = 28
' ========================================================================================
' COMAdminServiceOptions enum
' Service Enumerations
' ========================================================================================
%EQUATE `COMAdminServiceLoadBalanceRouter = 1
' ========================================================================================
' COMAdminServiceStatusOptions enum
' Service Status Enumerations
' ========================================================================================
%EQUATE `COMAdminServiceStopped = 0
%EQUATE `COMAdminServiceStartPending = %COMAdminServiceStopped + 1
%EQUATE `COMAdminServiceStopPending = %COMAdminServiceStartPending + 1
%EQUATE `COMAdminServiceRunning = %COMAdminServiceStopPending + 1
%EQUATE `COMAdminServiceContinuePending = %COMAdminServiceRunning + 1
%EQUATE `COMAdminServicePausePending = %COMAdminServiceContinuePending + 1
%EQUATE `COMAdminServicePaused = %COMAdminServicePausePending + 1
%EQUATE `COMAdminServiceUnknownState = %COMAdminServicePaused + 1
' ========================================================================================
' COMAdminQCMessageAuthenticateOptions enum
' Queued Components Message Authenticate Enumeration
' ========================================================================================
%EQUATE `COMAdminQCMessageAuthenticateSecureApps = 0
%EQUATE `COMAdminQCMessageAuthenticateOff = 1
%EQUATE `COMAdminQCMessageAuthenticateOn = 2
' ========================================================================================
' COMAdminFileFlags enum
' File Flags
' ========================================================================================
%EQUATE `COMAdminFileFlagLoadable = &H1 ' 1
%EQUATE `COMAdminFileFlagCOM = &H2 ' 2
%EQUATE `COMAdminFileFlagContainsPS = &H4 ' 4
%EQUATE `COMAdminFileFlagContainsComp = &H8 ' 8
%EQUATE `COMAdminFileFlagContainsTLB = &H10 ' 16
%EQUATE `COMAdminFileFlagSelfReg = &H20 ' 32
%EQUATE `COMAdminFileFlagSelfUnReg = &H40 ' 64
%EQUATE `COMAdminFileFlagUnloadableDLL = &H80 ' 128
%EQUATE `COMAdminFileFlagDoesNotExist = &H100 ' 256
%EQUATE `COMAdminFileFlagAlreadyInstalled = &H200 ' 512
%EQUATE `COMAdminFileFlagBadTLB = &H400 ' 1024
%EQUATE `COMAdminFileFlagGetClassObjFailed = &H800 ' 2048
%EQUATE `COMAdminFileFlagClassNotAvailable = &H1000 ' 4096
%EQUATE `COMAdminFileFlagRegistrar = &H2000 ' 8192
%EQUATE `COMAdminFileFlagNoRegistrar = &H4000 ' 16384
%EQUATE `COMAdminFileFlagDLLRegsvrFailed = &H8000 ' 32768
%EQUATE `COMAdminFileFlagRegTLBFailed = &H10000 ' 65536
%EQUATE `COMAdminFileFlagRegistrarFailed = &H20000 ' 131072
%EQUATE `COMAdminFileFlagError = &H40000 ' 262144
' ========================================================================================
' COMAdminComponentFlags enum
' Component Flags
' ========================================================================================
%EQUATE `COMAdminCompFlagTypeInfoFound = &H1 ' 1
%EQUATE `COMAdminCompFlagCOMPlusPropertiesFound = &H2 ' 2
%EQUATE `COMAdminCompFlagProxyFound = &H4 ' 4
%EQUATE `COMAdminCompFlagInterfacesFound = &H8 ' 8
%EQUATE `COMAdminCompFlagAlreadyInstalled = &H10 ' 16
%EQUATE `COMAdminCompFlagNotInApplication = &H20 ' 32
' ========================================================================================
' COMAdminComponentFlags enum
' Component Flags
' ========================================================================================
%EQUATE `COMAdminCompFlagTypeInfoFound = &H1 ' 1
%EQUATE `COMAdminCompFlagCOMPlusPropertiesFound = &H2 ' 2
%EQUATE `COMAdminCompFlagProxyFound = &H4 ' 4
%EQUATE `COMAdminCompFlagInterfacesFound = &H8 ' 8
%EQUATE `COMAdminCompFlagAlreadyInstalled = &H10 ' 16
%EQUATE `COMAdminCompFlagNotInApplication = &H20 ' 32
$COMAdminCollectionRoot = "Root"
$COMAdminCollectionApplications = "Applications"
$COMAdminCollectionComponents = "Components"
$COMAdminCollectionComputerList = "ComputerList"
$COMAdminCollectionApplicationCluster = "ApplicationCluster"
$COMAdminCollectionLocalComputer = "LocalComputer"
$COMAdminCollectionInprocServers = "InprocServers"
$COMAdminCollectionRelatedCollectionInfo = "RelatedCollectionInfo"
$COMAdminCollectionPropertyInfo = "PropertyInfo"
$COMAdminCollectionRoles = "Roles"
$COMAdminCollectionErrorInfo = "ErrorInfo"
$COMAdminCollectionInterfacesForComponent = "InterfacesForComponent"
$COMAdminCollectionRolesForComponent = "RolesForComponent"
$COMAdminCollectionMethodsForInterface = "MethodsForInterface"
$COMAdminCollectionRolesForInterface = "RolesForInterface"
$COMAdminCollectionRolesForMethod = "RolesForMethod"
$COMAdminCollectionUsersInRole = "UsersInRole"
$COMAdminCollectionDCOMProtocols = "DCOMProtocols"
$COMAdminCollectionPartitions = "Partitions"
' ========================================================================================
' COMAdminErrorCodes enum
' Error codes (HRESULTS)
' ========================================================================================
%EQUATE `COMAdminErrObjectErrors = -2146368511& ' &H80110401
%EQUATE `COMAdminErrObjectInvalid = -2146368510& ' &H80110402
%EQUATE `COMAdminErrKeyMissing = -2146368509& ' &H80110403
%EQUATE `COMAdminErrAlreadyInstalled = -2146368508& ' &H80110404
%EQUATE `COMAdminErrAppFileWriteFail = -2146368505& ' &H80110407
%EQUATE `COMAdminErrAppFileReadFail = -2146368504& ' &H80110408
%EQUATE `COMAdminErrAppFileVersion = -2146368503& ' &H80110409
%EQUATE `COMAdminErrBadPath = -2146368502& ' &H8011040A
%EQUATE `COMAdminErrApplicationExists = -2146368501& ' &H8011040B
%EQUATE `COMAdminErrRoleExists = -2146368500& ' &H8011040C
%EQUATE `COMAdminErrCantCopyFile = -2146368499& ' &H8011040D
%EQUATE `COMAdminErrNoUser = -2146368497& ' &H8011040F
%EQUATE `COMAdminErrInvalidUserids = -2146368496& ' &H80110410
%EQUATE `COMAdminErrNoRegistryCLSID = -2146368495& ' &H80110411
%EQUATE `COMAdminErrBadRegistryProgID = -2146368494& ' &H80110412
%EQUATE `COMAdminErrAuthenticationLevel = -2146368493& ' &H80110413
%EQUATE `COMAdminErrUserPasswdNotValid = -2146368492& ' &H80110414
%EQUATE `COMAdminErrCLSIDOrIIDMismatch = -2146368488& ' &H80110418
%EQUATE `COMAdminErrRemoteInterface = -2146368487& ' &H80110419
%EQUATE `COMAdminErrDllRegisterServer = -2146368486& ' &H8011041A
%EQUATE `COMAdminErrNoServerShare = -2146368485& ' &H8011041B
%EQUATE `COMAdminErrDllLoadFailed = -2146368483& ' &H8011041D
%EQUATE `COMAdminErrBadRegistryLibID = -2146368482& ' &H8011041E
%EQUATE `COMAdminErrAppDirNotFound = -2146368481& ' &H8011041F
%EQUATE `COMAdminErrRegistrarFailed = -2146368477& ' &H80110423
%EQUATE `COMAdminErrCompFileDoesNotExist = -2146368476& ' &H80110424
%EQUATE `COMAdminErrCompFileLoadDLLFail = -2146368475& ' &H80110425
%EQUATE `COMAdminErrCompFileGetClassObj = -2146368474& ' &H80110426
%EQUATE `COMAdminErrCompFileClassNotAvail = -2146368473& ' &H80110427
%EQUATE `COMAdminErrCompFileBadTLB = -2146368472& ' &H80110428
%EQUATE `COMAdminErrCompFileNotInstallable = -2146368471& ' &H80110429
%EQUATE `COMAdminErrNotChangeable = -2146368470& ' &H8011042A
%EQUATE `COMAdminErrNotDeletable = -2146368469& ' &H8011042B
%EQUATE `COMAdminErrSession = -2146368468& ' &H8011042C
%EQUATE `COMAdminErrCompMoveLocked = -2146368467& ' &H8011042D
%EQUATE `COMAdminErrCompMoveBadDest = -2146368466& ' &H8011042E
%EQUATE `COMAdminErrRegisterTLB = -2146368464& ' &H80110430
%EQUATE `COMAdminErrSystemApp = -2146368461& ' &H80110433
%EQUATE `COMAdminErrCompFileNoRegistrar = -2146368460& ' &H80110434
%EQUATE `COMAdminErrCoReqCompInstalled = -2146368459& ' &H80110435
%EQUATE `COMAdminErrServiceNotInstalled = -2146368458& ' &H80110436
%EQUATE `COMAdminErrPropertySaveFailed = -2146368457& ' &H80110437
%EQUATE `COMAdminErrObjectExists = -2146368456& ' &H80110438
%EQUATE `COMAdminErrComponentExists = -2146368455& ' &H80110439
%EQUATE `COMAdminErrRegFileCorrupt = -2146368453& ' &H8011043B
%EQUATE `COMAdminErrPropertyOverflow = -2146368452& ' &H8011043C
%EQUATE `COMAdminErrNotInRegistry = -2146368450& ' &H8011043E
%EQUATE `COMAdminErrObjectNotPoolable = -2146368449& ' &H8011043F
%EQUATE `COMAdminErrApplidMatchesClsid = -2146368442& ' &H80110446
%EQUATE `COMAdminErrRoleDoesNotExist = -2146368441& ' &H80110447
%EQUATE `COMAdminErrStartAppNeedsComponents = -2146368440& ' &H80110448
%EQUATE `COMAdminErrRequiresDifferentPlatform = -2146368439& ' &H80110449
%EQUATE `COMAdminErrQueuingServiceNotAvailable = -2146367998& ' &H80110602
%EQUATE `COMAdminErrObjectParentMissing = -2146367480& ' &H80110808
%EQUATE `COMAdminErrObjectDoesNotExist = -2146367479& ' &H80110809
%EQUATE `COMAdminErrCanNotExportAppProxy = -2146368438& ' &H8011044A
%EQUATE `COMAdminErrCanNotStartApp = -2146368437& ' &H8011044B
%EQUATE `COMAdminErrCanNotExportSystemApp = -2146368436& ' &H8011044C
%EQUATE `COMAdminErrCanNotSubscribeToComponent = -2146368435& ' &H8011044D
%EQUATE `COMAdminErrAppNotRunning = -2146367478& ' &H8011080A
%EQUATE `COMAdminErrEventClassCannotBeSubscriber = -2146368434& ' &H8011044E
%EQUATE `COMAdminErrLibAppProxyIncompatible = -2146368433& ' &H8011044F
%EQUATE `COMAdminErrBasePartitionOnly = -2146368432& ' &H80110450
%EQUATE `COMAdminErrDuplicatePartitionName = -2146368425& ' &H80110457
%EQUATE `COMAdminErrPartitionInUse = -2146368423& ' &H80110459
%EQUATE `COMAdminErrImportedComponentsNotAllowed = -2146368421& ' &H8011045B
%EQUATE `COMAdminErrRegdbNotInitialized = -2146368398& ' &H80110472
%EQUATE `COMAdminErrRegdbNotOpen = -2146368397& ' &H80110473
%EQUATE `COMAdminErrRegdbSystemErr = -2146368396& ' &H80110474
%EQUATE `COMAdminErrRegdbAlreadyRunning = -2146368395& ' &H80110475
%EQUATE `COMAdminErrMigVersionNotSupported = -2146368384& ' &H80110480
%EQUATE `COMAdminErrMigSchemaNotFound = -2146368383& ' &H80110481
%EQUATE `COMAdminErrCatBitnessMismatch = -2146368382& ' &H80110482
%EQUATE `COMAdminErrCatUnacceptableBitness = -2146368381& ' &H80110483
%EQUATE `COMAdminErrCatWrongAppBitnessBitness = -2146368380& ' &H80110484
%EQUATE `COMAdminErrCatPauseResumeNotSupported = -2146368379& ' &H80110485
%EQUATE `COMAdminErrCatServerFault = -2146368378& ' &H80110486
%EQUATE `COMAdminErrCantRecycleLibraryApps = -2146367473& ' &H8011080F
%EQUATE `COMAdminErrCantRecycleServiceApps = -2146367471& ' &H80110811
%EQUATE `COMAdminErrProcessAlreadyRecycled = -2146367470& ' &H80110812
%EQUATE `COMAdminErrPausedProcessMayNotBeRecycled = -2146367469& ' &H80110813
%EQUATE `COMAdminErrInvalidPartition = -2146367477& ' &H8011080B
%EQUATE `COMAdminErrPartitionMsiOnly = -2146367463& ' &H80110819
%EQUATE `COMAdminErrStartAppDisabled = -2146368431& ' &H80110451
%EQUATE `COMAdminErrCompMoveSource = -2146367460& ' &H8011081C
%EQUATE `COMAdminErrCompMoveDest = -2146367459& ' &H8011081D
%EQUATE `COMAdminErrCompMovePrivate = -2146367458& ' &H8011081E
%EQUATE `COMAdminErrCannotCopyEventClass = -2146367456& ' &H80110820
#ENDIF
