comadmin.idl 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427
  1. cpp_quote("/**")
  2. cpp_quote(" * This file is part of the mingw-w64 runtime package.")
  3. cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.")
  4. cpp_quote(" */")
  5. cpp_quote("")
  6. #include "winerror.h"
  7. import "unknwn.idl";
  8. import "oaidl.idl";
  9. cpp_quote("#include <winapifamily.h>")
  10. cpp_quote("")
  11. cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
  12. cpp_quote("")
  13. cpp_quote("#include <objbase.h>")
  14. cpp_quote("")
  15. typedef enum COMAdminInUse {
  16. COMAdminNotInUse = 0,
  17. COMAdminInUseByCatalog = 1,
  18. COMAdminInUseByRegistryUnknown = 2,
  19. COMAdminInUseByRegistryProxyStub = 3,
  20. COMAdminInUseByRegistryTypeLib = 4,
  21. COMAdminInUseByRegistryClsid = 5
  22. } COMAdminInUse;
  23. typedef enum COMAdminErrorCodes {
  24. COMAdminErrObjectErrors = COMADMIN_E_OBJECTERRORS,
  25. COMAdminErrObjectInvalid = COMADMIN_E_OBJECTINVALID,
  26. COMAdminErrKeyMissing = COMADMIN_E_KEYMISSING,
  27. COMAdminErrAlreadyInstalled = COMADMIN_E_ALREADYINSTALLED,
  28. COMAdminErrAppFileWriteFail = COMADMIN_E_APP_FILE_WRITEFAIL,
  29. COMAdminErrAppFileReadFail = COMADMIN_E_APP_FILE_READFAIL,
  30. COMAdminErrAppFileVersion = COMADMIN_E_APP_FILE_VERSION,
  31. COMAdminErrBadPath = COMADMIN_E_BADPATH,
  32. COMAdminErrApplicationExists = COMADMIN_E_APPLICATIONEXISTS,
  33. COMAdminErrRoleExists = COMADMIN_E_ROLEEXISTS,
  34. COMAdminErrCantCopyFile = COMADMIN_E_CANTCOPYFILE,
  35. COMAdminErrNoUser = COMADMIN_E_NOUSER,
  36. COMAdminErrInvalidUserids = COMADMIN_E_INVALIDUSERIDS,
  37. COMAdminErrNoRegistryCLSID = COMADMIN_E_NOREGISTRYCLSID,
  38. COMAdminErrBadRegistryProgID = COMADMIN_E_BADREGISTRYPROGID,
  39. COMAdminErrAuthenticationLevel = COMADMIN_E_AUTHENTICATIONLEVEL,
  40. COMAdminErrUserPasswdNotValid = COMADMIN_E_USERPASSWDNOTVALID,
  41. COMAdminErrCLSIDOrIIDMismatch = COMADMIN_E_CLSIDORIIDMISMATCH,
  42. COMAdminErrRemoteInterface = COMADMIN_E_REMOTEINTERFACE,
  43. COMAdminErrDllRegisterServer = COMADMIN_E_DLLREGISTERSERVER,
  44. COMAdminErrNoServerShare = COMADMIN_E_NOSERVERSHARE,
  45. COMAdminErrDllLoadFailed = COMADMIN_E_DLLLOADFAILED,
  46. COMAdminErrBadRegistryLibID = COMADMIN_E_BADREGISTRYLIBID,
  47. COMAdminErrAppDirNotFound = COMADMIN_E_APPDIRNOTFOUND,
  48. COMAdminErrRegistrarFailed = COMADMIN_E_REGISTRARFAILED,
  49. COMAdminErrCompFileDoesNotExist = COMADMIN_E_COMPFILE_DOESNOTEXIST,
  50. COMAdminErrCompFileLoadDLLFail = COMADMIN_E_COMPFILE_LOADDLLFAIL,
  51. COMAdminErrCompFileGetClassObj = COMADMIN_E_COMPFILE_GETCLASSOBJ,
  52. COMAdminErrCompFileClassNotAvail = COMADMIN_E_COMPFILE_CLASSNOTAVAIL,
  53. COMAdminErrCompFileBadTLB = COMADMIN_E_COMPFILE_BADTLB,
  54. COMAdminErrCompFileNotInstallable = COMADMIN_E_COMPFILE_NOTINSTALLABLE,
  55. COMAdminErrNotChangeable = COMADMIN_E_NOTCHANGEABLE,
  56. COMAdminErrNotDeletable = COMADMIN_E_NOTDELETEABLE,
  57. COMAdminErrSession = COMADMIN_E_SESSION,
  58. COMAdminErrCompMoveLocked = COMADMIN_E_COMP_MOVE_LOCKED,
  59. COMAdminErrCompMoveBadDest = COMADMIN_E_COMP_MOVE_BAD_DEST,
  60. COMAdminErrRegisterTLB = COMADMIN_E_REGISTERTLB,
  61. COMAdminErrSystemApp = COMADMIN_E_SYSTEMAPP,
  62. COMAdminErrCompFileNoRegistrar = COMADMIN_E_COMPFILE_NOREGISTRAR,
  63. COMAdminErrCoReqCompInstalled = COMADMIN_E_COREQCOMPINSTALLED,
  64. COMAdminErrServiceNotInstalled = COMADMIN_E_SERVICENOTINSTALLED,
  65. COMAdminErrPropertySaveFailed = COMADMIN_E_PROPERTYSAVEFAILED,
  66. COMAdminErrObjectExists = COMADMIN_E_OBJECTEXISTS,
  67. COMAdminErrComponentExists = COMADMIN_E_COMPONENTEXISTS,
  68. COMAdminErrRegFileCorrupt = COMADMIN_E_REGFILE_CORRUPT,
  69. COMAdminErrPropertyOverflow = COMADMIN_E_PROPERTY_OVERFLOW,
  70. COMAdminErrNotInRegistry = COMADMIN_E_NOTINREGISTRY,
  71. COMAdminErrObjectNotPoolable = COMADMIN_E_OBJECTNOTPOOLABLE,
  72. COMAdminErrApplidMatchesClsid = COMADMIN_E_APPLID_MATCHES_CLSID,
  73. COMAdminErrRoleDoesNotExist = COMADMIN_E_ROLE_DOES_NOT_EXIST,
  74. COMAdminErrStartAppNeedsComponents = COMADMIN_E_START_APP_NEEDS_COMPONENTS,
  75. COMAdminErrRequiresDifferentPlatform = COMADMIN_E_REQUIRES_DIFFERENT_PLATFORM,
  76. COMAdminErrQueuingServiceNotAvailable = COMQC_E_QUEUING_SERVICE_NOT_AVAILABLE,
  77. COMAdminErrObjectParentMissing = COMADMIN_E_OBJECT_PARENT_MISSING,
  78. COMAdminErrObjectDoesNotExist = COMADMIN_E_OBJECT_DOES_NOT_EXIST,
  79. COMAdminErrCanNotExportAppProxy = COMADMIN_E_CAN_NOT_EXPORT_APP_PROXY,
  80. COMAdminErrCanNotStartApp = COMADMIN_E_CAN_NOT_START_APP,
  81. COMAdminErrCanNotExportSystemApp = COMADMIN_E_CAN_NOT_EXPORT_SYS_APP,
  82. COMAdminErrCanNotSubscribeToComponent = COMADMIN_E_CANT_SUBSCRIBE_TO_COMPONENT,
  83. COMAdminErrAppNotRunning = COMADMIN_E_APP_NOT_RUNNING,
  84. COMAdminErrEventClassCannotBeSubscriber = COMADMIN_E_EVENTCLASS_CANT_BE_SUBSCRIBER,
  85. COMAdminErrLibAppProxyIncompatible = COMADMIN_E_LIB_APP_PROXY_INCOMPATIBLE,
  86. COMAdminErrBasePartitionOnly = COMADMIN_E_BASE_PARTITION_ONLY,
  87. COMAdminErrDuplicatePartitionName = COMADMIN_E_CAT_DUPLICATE_PARTITION_NAME,
  88. COMAdminErrPartitionInUse = COMADMIN_E_CAT_PARTITION_IN_USE,
  89. COMAdminErrImportedComponentsNotAllowed = COMADMIN_E_CAT_IMPORTED_COMPONENTS_NOT_ALLOWED,
  90. COMAdminErrRegdbNotInitialized = COMADMIN_E_REGDB_NOTINITIALIZED,
  91. COMAdminErrRegdbNotOpen = COMADMIN_E_REGDB_NOTOPEN,
  92. COMAdminErrRegdbSystemErr = COMADMIN_E_REGDB_SYSTEMERR,
  93. COMAdminErrRegdbAlreadyRunning = COMADMIN_E_REGDB_ALREADYRUNNING,
  94. COMAdminErrMigVersionNotSupported = COMADMIN_E_MIG_VERSIONNOTSUPPORTED,
  95. COMAdminErrMigSchemaNotFound = COMADMIN_E_MIG_SCHEMANOTFOUND,
  96. COMAdminErrCatBitnessMismatch = COMADMIN_E_CAT_BITNESSMISMATCH,
  97. COMAdminErrCatUnacceptableBitness = COMADMIN_E_CAT_UNACCEPTABLEBITNESS,
  98. COMAdminErrCatWrongAppBitnessBitness = COMADMIN_E_CAT_WRONGAPPBITNESS,
  99. COMAdminErrCatPauseResumeNotSupported = COMADMIN_E_CAT_PAUSE_RESUME_NOT_SUPPORTED,
  100. COMAdminErrCatServerFault = COMADMIN_E_CAT_SERVERFAULT,
  101. COMAdminErrCantRecycleLibraryApps = COMADMIN_E_CANTRECYCLELIBRARYAPPS,
  102. COMAdminErrCantRecycleServiceApps = COMADMIN_E_CANTRECYCLESERVICEAPPS,
  103. COMAdminErrProcessAlreadyRecycled = COMADMIN_E_PROCESSALREADYRECYCLED,
  104. COMAdminErrPausedProcessMayNotBeRecycled = COMADMIN_E_PAUSEDPROCESSMAYNOTBERECYCLED,
  105. COMAdminErrInvalidPartition = COMADMIN_E_INVALID_PARTITION,
  106. COMAdminErrPartitionMsiOnly = COMADMIN_E_PARTITION_MSI_ONLY,
  107. COMAdminErrStartAppDisabled = COMADMIN_E_START_APP_DISABLED,
  108. COMAdminErrCompMoveSource = COMADMIN_E_COMP_MOVE_SOURCE,
  109. COMAdminErrCompMoveDest = COMADMIN_E_COMP_MOVE_DEST,
  110. COMAdminErrCompMovePrivate = COMADMIN_E_COMP_MOVE_PRIVATE,
  111. COMAdminErrCannotCopyEventClass = COMADMIN_E_CANNOT_ALIAS_EVENTCLASS
  112. } COMAdminErrorCodes;
  113. typedef enum COMAdminComponentType {
  114. COMAdmin32BitComponent = 0x1,
  115. COMAdmin64BitComponent = 0x2
  116. } COMAdminComponentType;
  117. typedef enum COMAdminApplicationInstallOptions {
  118. COMAdminInstallNoUsers = 0,
  119. COMAdminInstallUsers = 1,
  120. COMAdminInstallForceOverwriteOfFiles = 2
  121. } COMAdminApplicationInstallOptions;
  122. typedef enum COMAdminApplicationExportOptions {
  123. COMAdminExportNoUsers = 0x0,
  124. COMAdminExportUsers = 0x1,
  125. COMAdminExportApplicationProxy = 0x2,
  126. COMAdminExportForceOverwriteOfFiles = 0x4,
  127. COMAdminExportIn10Format = 0x10
  128. } COMAdminApplicationExportOptions;
  129. typedef enum COMAdminThreadingModels {
  130. COMAdminThreadingModelApartment = 0,
  131. COMAdminThreadingModelFree = 1,
  132. COMAdminThreadingModelMain = 2,
  133. COMAdminThreadingModelBoth = 3,
  134. COMAdminThreadingModelNeutral = 4,
  135. COMAdminThreadingModelNotSpecified = 5
  136. } COMAdminThreadingModels;
  137. typedef enum COMAdminTransactionOptions {
  138. COMAdminTransactionIgnored = 0,
  139. COMAdminTransactionNone = 1,
  140. COMAdminTransactionSupported = 2,
  141. COMAdminTransactionRequired = 3,
  142. COMAdminTransactionRequiresNew = 4,
  143. } COMAdminTransactionOptions;
  144. typedef enum COMAdminTxIsolationLevelOptions {
  145. COMAdminTxIsolationLevelAny = 0,
  146. COMAdminTxIsolationLevelReadUnCommitted,
  147. COMAdminTxIsolationLevelReadCommitted,
  148. COMAdminTxIsolationLevelRepeatableRead,
  149. COMAdminTxIsolationLevelSerializable,
  150. } COMAdminTxIsolationLevelOptions;
  151. typedef enum COMAdminSynchronizationOptions {
  152. COMAdminSynchronizationIgnored = 0,
  153. COMAdminSynchronizationNone = 1,
  154. COMAdminSynchronizationSupported = 2,
  155. COMAdminSynchronizationRequired = 3,
  156. COMAdminSynchronizationRequiresNew = 4
  157. } COMAdminSynchronizationOptions;
  158. typedef enum COMAdminActivationOptions {
  159. COMAdminActivationInproc = 0,
  160. COMAdminActivationLocal = 1
  161. } COMAdminActivationOptions;
  162. typedef enum COMAdminAccessChecksLevelOptions {
  163. COMAdminAccessChecksApplicationLevel = 0,
  164. COMAdminAccessChecksApplicationComponentLevel = 1
  165. } COMAdminAccessChecksLevelOptions;
  166. typedef enum COMAdminAuthenticationLevelOptions {
  167. COMAdminAuthenticationDefault = 0,
  168. COMAdminAuthenticationNone = 1,
  169. COMAdminAuthenticationConnect = 2,
  170. COMAdminAuthenticationCall = 3,
  171. COMAdminAuthenticationPacket = 4,
  172. COMAdminAuthenticationIntegrity = 5,
  173. COMAdminAuthenticationPrivacy = 6
  174. } COMAdminAuthenticationLevelOptions;
  175. typedef enum COMAdminImpersonationLevelOptions {
  176. COMAdminImpersonationAnonymous = 1,
  177. COMAdminImpersonationIdentify = 2,
  178. COMAdminImpersonationImpersonate = 3,
  179. COMAdminImpersonationDelegate = 4
  180. } COMAdminImpersonationLevelOptions;
  181. typedef enum COMAdminAuthenticationCapabilitiesOptions {
  182. COMAdminAuthenticationCapabilitiesNone = 0x0,
  183. COMAdminAuthenticationCapabilitiesSecureReference = 0x2,
  184. COMAdminAuthenticationCapabilitiesStaticCloaking = 0x20,
  185. COMAdminAuthenticationCapabilitiesDynamicCloaking = 0x40
  186. } COMAdminAuthenticationCapabilitiesOptions;
  187. typedef enum COMAdminOS {
  188. COMAdminOSNotInitialized = 0,
  189. COMAdminOSWindows3_1 = 1,
  190. COMAdminOSWindows9x = 2,
  191. COMAdminOSWindows2000 = 3,
  192. COMAdminOSWindows2000AdvancedServer = 4,
  193. COMAdminOSWindows2000Unknown = 5,
  194. COMAdminOSUnknown = 6,
  195. COMAdminOSWindowsXPPersonal = 11,
  196. COMAdminOSWindowsXPProfessional = 12,
  197. COMAdminOSWindowsNETStandardServer = 13,
  198. COMAdminOSWindowsNETEnterpriseServer = 14,
  199. COMAdminOSWindowsNETDatacenterServer = 15,
  200. COMAdminOSWindowsNETWebServer = 16,
  201. COMAdminOSWindowsLonghornPersonal = 17,
  202. COMAdminOSWindowsLonghornProfessional = 18,
  203. COMAdminOSWindowsLonghornStandardServer = 19,
  204. COMAdminOSWindowsLonghornEnterpriseServer = 20,
  205. COMAdminOSWindowsLonghornDatacenterServer = 21,
  206. COMAdminOSWindowsLonghornWebServer = 22,
  207. COMAdminOSWindows7Personal = 23,
  208. COMAdminOSWindows7Professional = 24,
  209. COMAdminOSWindows7StandardServer = 25,
  210. COMAdminOSWindows7EnterpriseServer = 26,
  211. COMAdminOSWindows7DatacenterServer = 27,
  212. COMAdminOSWindows7WebServer = 28,
  213. COMAdminOSWindows8Personal = 29,
  214. COMAdminOSWindows8Professional = 30,
  215. COMAdminOSWindows8StandardServer = 31,
  216. COMAdminOSWindows8EnterpriseServer = 32,
  217. COMAdminOSWindows8DatacenterServer = 33,
  218. COMAdminOSWindows8WebServer = 34
  219. } COMAdminOS;
  220. typedef enum COMAdminServiceOptions {
  221. COMAdminServiceLoadBalanceRouter = 1
  222. } COMAdminServiceOptions;
  223. typedef enum COMAdminServiceStatusOptions {
  224. COMAdminServiceStopped = 0,
  225. COMAdminServiceStartPending,
  226. COMAdminServiceStopPending,
  227. COMAdminServiceRunning,
  228. COMAdminServiceContinuePending,
  229. COMAdminServicePausePending,
  230. COMAdminServicePaused,
  231. COMAdminServiceUnknownState
  232. } COMAdminServiceStatusOptions;
  233. typedef enum COMAdminComponentFlags {
  234. COMAdminCompFlagTypeInfoFound = 0x1,
  235. COMAdminCompFlagCOMPlusPropertiesFound = 0x2,
  236. COMAdminCompFlagProxyFound = 0x4,
  237. COMAdminCompFlagInterfacesFound = 0x8,
  238. COMAdminCompFlagAlreadyInstalled = 0x10,
  239. COMAdminCompFlagNotInApplication = 0x20
  240. } COMAdminComponentFlags;
  241. typedef enum COMAdminQCMessageAuthenticateOptions {
  242. COMAdminQCMessageAuthenticateSecureApps = 0,
  243. COMAdminQCMessageAuthenticateOff = 1,
  244. COMAdminQCMessageAuthenticateOn = 2
  245. } COMAdminQCMessageAuthenticateOptions;
  246. typedef enum COMAdminFileFlags {
  247. COMAdminFileFlagLoadable = 0x1,
  248. COMAdminFileFlagCOM = 0x2,
  249. COMAdminFileFlagContainsPS = 0x4,
  250. COMAdminFileFlagContainsComp = 0x8,
  251. COMAdminFileFlagContainsTLB = 0x10,
  252. COMAdminFileFlagSelfReg = 0x20,
  253. COMAdminFileFlagSelfUnReg = 0x40,
  254. COMAdminFileFlagUnloadableDLL = 0x80,
  255. COMAdminFileFlagDoesNotExist = 0x100,
  256. COMAdminFileFlagAlreadyInstalled = 0x200,
  257. COMAdminFileFlagBadTLB = 0x400,
  258. COMAdminFileFlagGetClassObjFailed = 0x800,
  259. COMAdminFileFlagClassNotAvailable = 0x1000,
  260. COMAdminFileFlagRegistrar = 0x2000,
  261. COMAdminFileFlagNoRegistrar = 0x4000,
  262. COMAdminFileFlagDLLRegsvrFailed = 0x8000,
  263. COMAdminFileFlagRegTLBFailed = 0x10000,
  264. COMAdminFileFlagRegistrarFailed = 0x20000,
  265. COMAdminFileFlagError = 0x40000
  266. } COMAdminFileFlags;
  267. [object, uuid (DD662187-DFC2-11d1-a2cf-00805fc79235), dual, pointer_default (unique)]
  268. interface ICOMAdminCatalog : IDispatch {
  269. [id (1)] HRESULT GetCollection ([in] BSTR bstrCollName,[out, retval] IDispatch **ppCatalogCollection);
  270. [id (2)] HRESULT Connect ([in] BSTR bstrCatalogServerName,[out, retval] IDispatch **ppCatalogCollection);
  271. [propget, id (3)] HRESULT MajorVersion ([out, retval] long *plMajorVersion);
  272. [propget, id (4)] HRESULT MinorVersion ([out, retval] long *plMinorVersion);
  273. [id (5)] HRESULT GetCollectionByQuery ([in] BSTR bstrCollName,[in] SAFEARRAY (VARIANT) *ppsaVarQuery,[out, retval] IDispatch **ppCatalogCollection);
  274. [id (6)] HRESULT ImportComponent ([in] BSTR bstrApplIDOrName,[in] BSTR bstrCLSIDOrProgID);
  275. [id (7)] HRESULT InstallComponent ([in] BSTR bstrApplIDOrName,[in] BSTR bstrDLL,[in] BSTR bstrTLB,[in] BSTR bstrPSDLL);
  276. [id (8)] HRESULT ShutdownApplication ([in] BSTR bstrApplIDOrName);
  277. [id (9)] HRESULT ExportApplication ([in] BSTR bstrApplIDOrName,[in] BSTR bstrApplicationFile,[in] long lOptions);
  278. [id (10)] HRESULT InstallApplication ([in] BSTR bstrApplicationFile,[in, optional] BSTR bstrDestinationDirectory,[in, optional] long lOptions,[in, optional] BSTR bstrUserId,[in, optional] BSTR bstrPassword,[in, optional] BSTR bstrRSN);
  279. [id (11)] HRESULT StopRouter ();
  280. [id (12)] HRESULT RefreshRouter ();
  281. [id (13)] HRESULT StartRouter ();
  282. [id (14)] HRESULT Reserved1 ();
  283. [id (15)] HRESULT Reserved2 ();
  284. [id (16)] HRESULT InstallMultipleComponents ([in] BSTR bstrApplIDOrName,[in] SAFEARRAY (VARIANT) *ppsaVarFileNames,[in] SAFEARRAY (VARIANT) *ppsaVarCLSIDs);
  285. [id (17)] HRESULT GetMultipleComponentsInfo ([in] BSTR bstrApplIdOrName,[in] SAFEARRAY (VARIANT) *ppsaVarFileNames,[out] SAFEARRAY (VARIANT) *ppsaVarCLSIDs,[out] SAFEARRAY (VARIANT) *ppsaVarClassNames,[out] SAFEARRAY (VARIANT) *ppsaVarFileFlags,[out] SAFEARRAY (VARIANT) *ppsaVarComponentFlags);
  286. [id (18)] HRESULT RefreshComponents ();
  287. [id (19)] HRESULT BackupREGDB ([in] BSTR bstrBackupFilePath);
  288. [id (20)] HRESULT RestoreREGDB ([in] BSTR bstrBackupFilePath);
  289. [id (21)] HRESULT QueryApplicationFile ([in] BSTR bstrApplicationFile,[out] BSTR *pbstrApplicationName,[out] BSTR *pbstrApplicationDescription,[out] VARIANT_BOOL *pbHasUsers,[out] VARIANT_BOOL *pbIsProxy,[out] SAFEARRAY (VARIANT) *ppsaVarFileNames);
  290. [id (22)] HRESULT StartApplication ([in] BSTR bstrApplIdOrName);
  291. [id (23)] HRESULT ServiceCheck ([in] long lService,[out, retval] long *plStatus);
  292. [id (24)] HRESULT InstallMultipleEventClasses ([in] BSTR bstrApplIdOrName,[in] SAFEARRAY (VARIANT) *ppsaVarFileNames,[in] SAFEARRAY (VARIANT) *ppsaVarCLSIDS);
  293. [id (25)] HRESULT InstallEventClass ([in] BSTR bstrApplIdOrName,[in] BSTR bstrDLL,[in] BSTR bstrTLB,[in] BSTR bstrPSDLL);
  294. [id (26)] HRESULT GetEventClassesForIID ([in] BSTR bstrIID,[out] SAFEARRAY (VARIANT) *ppsaVarCLSIDs,[out] SAFEARRAY (VARIANT) *ppsaVarProgIDs,[out] SAFEARRAY (VARIANT) *ppsaVarDescriptions);
  295. }
  296. [object, uuid (790c6e0b-9194-4cc9-9426-A48A63185696), dual, pointer_default (unique)]
  297. interface ICOMAdminCatalog2 : ICOMAdminCatalog {
  298. [id (27)] HRESULT GetCollectionByQuery2 ([in] BSTR bstrCollectionName,[in] VARIANT *pVarQueryStrings,[out, retval] IDispatch **ppCatalogCollection);
  299. [id (28)] HRESULT GetApplicationInstanceIDFromProcessID ([in] long lProcessID,[out, retval] BSTR *pbstrApplicationInstanceID);
  300. [id (29)] HRESULT ShutdownApplicationInstances ([in] VARIANT *pVarApplicationInstanceID);
  301. [id (30)] HRESULT PauseApplicationInstances ([in] VARIANT *pVarApplicationInstanceID);
  302. [id (31)] HRESULT ResumeApplicationInstances ([in] VARIANT *pVarApplicationInstanceID);
  303. [id (32)] HRESULT RecycleApplicationInstances ([in] VARIANT *pVarApplicationInstanceID,[in] long lReasonCode);
  304. [id (33)] HRESULT AreApplicationInstancesPaused ([in] VARIANT *pVarApplicationInstanceID,[out, retval] VARIANT_BOOL *pVarBoolPaused);
  305. [id (34)] HRESULT DumpApplicationInstance ([in] BSTR bstrApplicationInstanceID,[in] BSTR bstrDirectory,[in] long lMaxImages,[out, retval] BSTR *pbstrDumpFile);
  306. [propget, id (35)] HRESULT IsApplicationInstanceDumpSupported ([out, retval] VARIANT_BOOL *pVarBoolDumpSupported);
  307. [id (36)] HRESULT CreateServiceForApplication ([in] BSTR bstrApplicationIDOrName,[in] BSTR bstrServiceName,[in] BSTR bstrStartType,[in] BSTR bstrErrorControl,[in] BSTR bstrDependencies,[in] BSTR bstrRunAs,[in] BSTR bstrPassword,[in] VARIANT_BOOL bDesktopOk);
  308. [id (37)] HRESULT DeleteServiceForApplication ([in] BSTR bstrApplicationIDOrName);
  309. [id (38)] HRESULT GetPartitionID ([in] BSTR bstrApplicationIDOrName,[out, retval] BSTR *pbstrPartitionID);
  310. [id (39)] HRESULT GetPartitionName ([in] BSTR bstrApplicationIDOrName,[out, retval] BSTR *pbstrPartitionName);
  311. [propput, id (40)] HRESULT CurrentPartition ([in] BSTR bstrPartitionIDOrName);
  312. [propget, id (41)] HRESULT CurrentPartitionID ([out, retval] BSTR *pbstrPartitionID);
  313. [propget, id (42)] HRESULT CurrentPartitionName ([out, retval] BSTR *pbstrPartitionName);
  314. [propget, id (43)] HRESULT GlobalPartitionID ([out, retval] BSTR *pbstrGlobalPartitionID);
  315. [id (44)] HRESULT FlushPartitionCache ();
  316. [id (45)] HRESULT CopyApplications ([in] BSTR bstrSourcePartitionIDOrName,[in] VARIANT *pVarApplicationID,[in] BSTR bstrDestinationPartitionIDOrName);
  317. [id (46)] HRESULT CopyComponents ([in] BSTR bstrSourceApplicationIDOrName,[in] VARIANT *pVarCLSIDOrProgID,[in] BSTR bstrDestinationApplicationIDOrName);
  318. [id (47)] HRESULT MoveComponents ([in] BSTR bstrSourceApplicationIDOrName,[in] VARIANT *pVarCLSIDOrProgID,[in] BSTR bstrDestinationApplicationIDOrName);
  319. [id (48)] HRESULT AliasComponent ([in] BSTR bstrSrcApplicationIDOrName,[in] BSTR bstrCLSIDOrProgID,[in] BSTR bstrDestApplicationIDOrName,[in] BSTR bstrNewProgId,[in] BSTR bstrNewClsid);
  320. [id (49)] HRESULT IsSafeToDelete ([in] BSTR bstrDllName,[out, retval] COMAdminInUse *pCOMAdminInUse);
  321. [id (50)] HRESULT ImportUnconfiguredComponents ([in] BSTR bstrApplicationIDOrName,[in] VARIANT *pVarCLSIDOrProgID,[in, optional] VARIANT *pVarComponentType);
  322. [id (51)] HRESULT PromoteUnconfiguredComponents ([in] BSTR bstrApplicationIDOrName,[in] VARIANT *pVarCLSIDOrProgID,[in, optional] VARIANT *pVarComponentType);
  323. [id (52)] HRESULT ImportComponents ([in] BSTR bstrApplicationIDOrName,[in] VARIANT *pVarCLSIDOrProgID,[in, optional] VARIANT *pVarComponentType);
  324. [propget, id (53)] HRESULT Is64BitCatalogServer ([out, retval] VARIANT_BOOL *pbIs64Bit);
  325. [id (54)] HRESULT ExportPartition ([in] BSTR bstrPartitionIDOrName,[in] BSTR bstrPartitionFileName,[in] long lOptions);
  326. [id (55)] HRESULT InstallPartition ([in] BSTR bstrFileName,[in] BSTR bstrDestDirectory,[in] long lOptions,[in] BSTR bstrUserID,[in] BSTR bstrPassword,[in] BSTR bstrRSN);
  327. [id (56)] HRESULT QueryApplicationFile2 ([in] BSTR bstrApplicationFile,[out, retval] IDispatch **ppFilesForImport);
  328. [id (57)] HRESULT GetComponentVersionCount ([in] BSTR bstrCLSIDOrProgID,[out, retval] long *plVersionCount);
  329. }
  330. [object, uuid (6eb22871-8a19-11d0-81b6-00a0c9231c29), dual, pointer_default (unique)]
  331. interface ICatalogObject : IDispatch {
  332. [propget, id (1)] HRESULT Value ([in] BSTR bstrPropName,[out, retval] VARIANT *pvarRetVal);
  333. [propput, id (1)] HRESULT Value ([in] BSTR bstrPropName,[in] VARIANT val);
  334. [propget, id (2)] HRESULT Key ([out, retval] VARIANT *pvarRetVal);
  335. [propget, id (3)] HRESULT Name ([out, retval] VARIANT *pvarRetVal);
  336. [id (4)] HRESULT IsPropertyReadOnly ([in] BSTR bstrPropName,[out, retval] VARIANT_BOOL *pbRetVal);
  337. [propget, id (5)] HRESULT Valid ([out, retval] VARIANT_BOOL *pbRetVal);
  338. [id (6)] HRESULT IsPropertyWriteOnly ([in] BSTR bstrPropName,[out, retval] VARIANT_BOOL *pbRetVal);
  339. }
  340. [object, uuid (6eb22872-8a19-11d0-81b6-00a0c9231c29), dual, pointer_default (unique)]
  341. interface ICatalogCollection : IDispatch {
  342. [propget, restricted, id (DISPID_NEWENUM)] HRESULT _NewEnum ([out, retval] IUnknown **ppEnumVariant);
  343. [propget, id (1)] HRESULT Item ([in] long lIndex,[out, retval] IDispatch **ppCatalogObject);
  344. [propget] HRESULT Count ([out, retval] long *plObjectCount);
  345. HRESULT Remove ([in] long lIndex);
  346. HRESULT Add ([out, retval] IDispatch **ppCatalogObject);
  347. [id (2)] HRESULT Populate ();
  348. [id (3)] HRESULT SaveChanges ([out, retval] long *pcChanges);
  349. [id (4)] HRESULT GetCollection ([in] BSTR bstrCollName,[in] VARIANT varObjectKey,[out, retval] IDispatch **ppCatalogCollection);
  350. [propget, id (6)] HRESULT Name ([out, retval] VARIANT *pVarNamel);
  351. [propget, id (7)] HRESULT AddEnabled ([out, retval] VARIANT_BOOL *pVarBool);
  352. [propget, id (8)] HRESULT RemoveEnabled ([out, retval] VARIANT_BOOL *pVarBool);
  353. [id (9)] HRESULT GetUtilInterface ([out, retval] IDispatch **ppIDispatch);
  354. [propget, id (10)] HRESULT DataStoreMajorVersion ([out, retval] long *plMajorVersion);
  355. [propget, id (11)] HRESULT DataStoreMinorVersion ([out, retval] long *plMinorVersionl);
  356. [id (12)] HRESULT PopulateByKey ([in] SAFEARRAY (VARIANT) psaKeys);
  357. [id (13)] HRESULT PopulateByQuery ([in] BSTR bstrQueryString,[in] long lQueryType);
  358. }
  359. [uuid (f618c513-dfb8-11d1-a2cf-00805fc79235), version (1.0)]
  360. library COMAdmin {
  361. importlib ("stdole32.tlb");
  362. [uuid (f618c514-dfb8-11d1-a2cf-00805fc79235)]
  363. coclass COMAdminCatalog {
  364. [default] interface ICOMAdminCatalog2;
  365. }
  366. [noncreatable, uuid (f618c515-dfb8-11d1-a2cf-00805fc79235)]
  367. coclass COMAdminCatalogObject {
  368. [default] interface ICatalogObject;
  369. }
  370. [noncreatable, uuid (f618c516-dfb8-11d1-a2cf-00805fc79235)]
  371. coclass COMAdminCatalogCollection {
  372. [default] interface ICatalogCollection;
  373. }
  374. const wchar_t *COMAdminCollectionRoot = "Root";
  375. const wchar_t *COMAdminCollectionApplications = "Applications";
  376. const wchar_t *COMAdminCollectionComponents = "Components";
  377. const wchar_t *COMAdminCollectionComputerList = "ComputerList";
  378. const wchar_t *COMAdminCollectionApplicationCluster = "ApplicationCluster";
  379. const wchar_t *COMAdminCollectionLocalComputer = "LocalComputer";
  380. const wchar_t *COMAdminCollectionInprocServers = "InprocServers";
  381. const wchar_t *COMAdminCollectionRelatedCollectionInfo = "RelatedCollectionInfo";
  382. const wchar_t *COMAdminCollectionPropertyInfo = "PropertyInfo";
  383. const wchar_t *COMAdminCollectionRoles = "Roles";
  384. const wchar_t *COMAdminCollectionErrorInfo = "ErrorInfo";
  385. const wchar_t *COMAdminCollectionInterfacesForComponent = "InterfacesForComponent";
  386. const wchar_t *COMAdminCollectionRolesForComponent = "RolesForComponent";
  387. const wchar_t *COMAdminCollectionMethodsForInterface = "MethodsForInterface";
  388. const wchar_t *COMAdminCollectionRolesForInterface = "RolesForInterface";
  389. const wchar_t *COMAdminCollectionRolesForMethod = "RolesForMethod";
  390. const wchar_t *COMAdminCollectionUsersInRole = "UsersInRole";
  391. const wchar_t *COMAdminCollectionDCOMProtocols = "DCOMProtocols";
  392. const wchar_t *COMAdminCollectionPartitions = "Partitions";
  393. }
  394. cpp_quote("#endif")