wsmandisp.idl 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211
  1. /**
  2. * This file is part of the mingw-w64 runtime package.
  3. * No warranty is given; refer to the file DISCLAIMER within this package.
  4. */
  5. cpp_quote("#include <winapifamily.h>")
  6. cpp_quote("")
  7. cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
  8. import "oaidl.idl";
  9. [uuid (F010BE25-296d-4036-980f-5a0669a17577), lcid (0x00), version (1.0), helpstring ("Microsoft WSMAN Automation V1.0 Library")]
  10. library WSManAutomation {
  11. importlib ("stdole2.tlb");
  12. typedef [v1_enum] enum _WSManSessionFlags {
  13. WSManFlagUTF8 = 0x1,
  14. WSManFlagCredUsernamePassword = 0x1000,
  15. WSManFlagSkipCACheck = 0x2000,
  16. WSManFlagSkipCNCheck = 0x4000,
  17. WSManFlagUseNoAuthentication = 0x8000,
  18. WSManFlagUseDigest = 0x10000,
  19. WSManFlagUseNegotiate = 0x20000,
  20. WSManFlagUseBasic = 0x40000,
  21. WSManFlagUseKerberos = 0x80000,
  22. WSManFlagNoEncryption = 0x100000,
  23. WSManFlagUseClientCertificate = 0x200000,
  24. WSManFlagEnableSPNServerPort = 0x400000,
  25. WSManFlagUTF16 = 0x800000,
  26. WSManFlagUseCredSsp = 0x1000000,
  27. WSManFlagSkipRevocationCheck = 0x2000000,
  28. WSManFlagAllowNegotiateImplicitCredentials = 0x4000000,
  29. WSManFlagUseSsl = 0x8000000
  30. } WSManSessionFlags;
  31. typedef [v1_enum] enum _WSManEnumFlags {
  32. WSManFlagReturnObject = 0x0,
  33. WSManFlagHierarchyDeep = 0x0,
  34. WSManFlagAssociatedInstance = 0x0,
  35. WSManFlagNonXmlText = 0x1,
  36. WSManFlagReturnEPR = 0x2,
  37. WSManFlagReturnObjectAndEPR = 0x4,
  38. WSManFlagHierarchyShallow = 0x20,
  39. WSManFlagHierarchyDeepBasePropsOnly = 0x40,
  40. WSManFlagAssociationInstance = 0x80
  41. } WSManEnumFlags;
  42. typedef [v1_enum] enum _WSManProxyAccessTypeFlags {
  43. WSManProxyIEConfig = 0x1,
  44. WSManProxyWinHttpConfig = 0x2,
  45. WSManProxyAutoDetect = 0x4,
  46. WSManProxyNoProxyServer = 0x8
  47. } WSManProxyAccessTypeFlags;
  48. typedef [v1_enum] enum _WSManProxyAuthenticationFlags {
  49. WSManFlagProxyAuthenticationUseNegotiate = 0x1,
  50. WSManFlagProxyAuthenticationUseBasic = 0x2,
  51. WSManFlagProxyAuthenticationUseDigest = 0x4
  52. } WSManProxyAuthenticationFlags;
  53. interface IWSMan;
  54. interface IWSManEx;
  55. interface IWSManEx2;
  56. interface IWSManEx3;
  57. interface IWSManConnectionOptions;
  58. interface IWSManConnectionOptionsEx;
  59. interface IWSManConnectionOptionsEx2;
  60. interface IWSManSession;
  61. interface IWSManSessionEx;
  62. interface IWSManEnumerator;
  63. interface IWSManResourceLocator;
  64. interface IWSManResourceLocatorInternal;
  65. interface IWSManInternal;
  66. [uuid (BCED617B-EC03-420b-8508-977dc7a686bd)]
  67. coclass WSMan {
  68. interface IWSMan;
  69. interface IWSManEx;
  70. interface IWSManEx2;
  71. [default] interface IWSManEx3;
  72. };
  73. [uuid (7de087a5-5dcb-4df7-BB12-0924ad8fbd9a)]
  74. coclass WSManInternal {
  75. interface IWSManInternal;
  76. };
  77. };
  78. [dual, object, local, oleautomation, nonextensible, hidden, uuid (190d8637-5cd3-496d-ad24-69636bb5a3b5)]
  79. interface IWSMan : IDispatch {
  80. [id (1)] HRESULT CreateSession ([in, defaultvalue (L"")] BSTR connection, [in, defaultvalue (0)] long flags, [in, defaultvalue (0)] IDispatch *connectionOptions, [out, retval] IDispatch **session);
  81. [id (2)] HRESULT CreateConnectionOptions ([out, retval] IDispatch **connectionOptions);
  82. [id (3), propget] HRESULT CommandLine ([out, retval] BSTR *value);
  83. [id (4), propget] HRESULT Error ([out, retval] BSTR *value);
  84. };
  85. [dual, object, local, oleautomation, nonextensible, hidden, uuid (2d53bdaa-798e-49e6-A1AA-74d01256f411)]
  86. interface IWSManEx : IWSMan {
  87. [id (5)] HRESULT CreateResourceLocator ([in, defaultvalue (L"")] BSTR strResourceLocator,[out, retval] IDispatch **newResourceLocator);
  88. [id (6)] HRESULT SessionFlagUTF8 ([out, retval] long *flags);
  89. [id (7)] HRESULT SessionFlagCredUsernamePassword ([out, retval] long *flags);
  90. [id (8)] HRESULT SessionFlagSkipCACheck ([out, retval] long *flags);
  91. [id (9)] HRESULT SessionFlagSkipCNCheck ([out, retval] long *flags);
  92. [id (10)] HRESULT SessionFlagUseDigest ([out, retval] long *flags);
  93. [id (11)] HRESULT SessionFlagUseNegotiate ([out, retval] long *flags);
  94. [id (12)] HRESULT SessionFlagUseBasic ([out, retval] long *flags);
  95. [id (13)] HRESULT SessionFlagUseKerberos ([out, retval] long *flags);
  96. [id (14)] HRESULT SessionFlagNoEncryption ([out, retval] long *flags);
  97. [id (15)] HRESULT SessionFlagEnableSPNServerPort ([out, retval] long *flags);
  98. [id (16)] HRESULT SessionFlagUseNoAuthentication ([out, retval] long *flags);
  99. [id (17)] HRESULT EnumerationFlagNonXmlText ([out, retval] long *flags);
  100. [id (18)] HRESULT EnumerationFlagReturnEPR ([out, retval] long *flags);
  101. [id (19)] HRESULT EnumerationFlagReturnObjectAndEPR ([out, retval] long *flags);
  102. [id (20)] HRESULT GetErrorMessage ([in] DWORD errorNumber,[out, retval] BSTR *errorMessage);
  103. [id (21)] HRESULT EnumerationFlagHierarchyDeep ([out, retval] long *flags);
  104. [id (22)] HRESULT EnumerationFlagHierarchyShallow ([out, retval] long *flags);
  105. [id (23)] HRESULT EnumerationFlagHierarchyDeepBasePropsOnly ([out, retval] long *flags);
  106. [id (24)] HRESULT EnumerationFlagReturnObject ([out, retval] long *flags);
  107. };
  108. [dual, object, local, oleautomation, nonextensible, hidden, uuid (1d1b5ae0-42d9-4021-8261-3987619512e9)]
  109. interface IWSManEx2 : IWSManEx {
  110. [id (25)] HRESULT SessionFlagUseClientCertificate ([out, retval] long *flags);
  111. };
  112. [dual, object, local, oleautomation, nonextensible, hidden, uuid (6400e966-011d-4eac-8474-049e0848afad)]
  113. interface IWSManEx3 : IWSManEx2 {
  114. [id (26)] HRESULT SessionFlagUTF16 ([out, retval] long *flags);
  115. [id (27)] HRESULT SessionFlagUseCredSsp ([out, retval] long *flags);
  116. [id (28)] HRESULT EnumerationFlagAssociationInstance ([out, retval] long *flags);
  117. [id (29)] HRESULT EnumerationFlagAssociatedInstance ([out, retval] long *flags);
  118. [id (30)] HRESULT SessionFlagSkipRevocationCheck ([out, retval] long *flags);
  119. [id (31)] HRESULT SessionFlagAllowNegotiateImplicitCredentials ([out, retval] long *flags);
  120. [id (32)] HRESULT SessionFlagUseSsl ([out, retval] long *flags);
  121. };
  122. [dual, object, local, oleautomation, nonextensible, uuid (f704e861-9e52-464f-B786-da5Eb2320fDd)]
  123. interface IWSManConnectionOptions : IDispatch {
  124. [id (1), propget] HRESULT UserName ([out, retval] BSTR *name);
  125. [id (1), propput] HRESULT UserName ([in] BSTR name);
  126. [id (2), propput] HRESULT Password ([in] BSTR password);
  127. };
  128. [dual, object, local, oleautomation, nonextensible, uuid (ef43Edf7-2a48-4d93-9526-8bd6ab6d4a6b)]
  129. interface IWSManConnectionOptionsEx : IWSManConnectionOptions {
  130. [id (3), propget] HRESULT CertificateThumbprint ([out, retval] BSTR *thumbprint);
  131. [id (3), propput] HRESULT CertificateThumbprint ([in] BSTR thumbprint);
  132. };
  133. [dual, object, local, oleautomation, nonextensible, uuid (f500c9ec-24ee-48ab-b38d-fc9a164c658e)]
  134. interface IWSManConnectionOptionsEx2 : IWSManConnectionOptionsEx {
  135. [id (4)] HRESULT SetProxy ([in, defaultvalue (0)] long accessType,[in, defaultvalue (0)] long authenticationMechanism,[in, defaultvalue (L"")] BSTR userName,[in, defaultvalue (L"")] BSTR password);
  136. [id (5)] HRESULT ProxyIEConfig ([out, retval] long *value);
  137. [id (6)] HRESULT ProxyWinHttpConfig ([out, retval] long *value);
  138. [id (7)] HRESULT ProxyAutoDetect ([out, retval] long *value);
  139. [id (8)] HRESULT ProxyNoProxyServer ([out, retval] long *value);
  140. [id (9)] HRESULT ProxyAuthenticationUseNegotiate ([out, retval] long *value);
  141. [id (10)] HRESULT ProxyAuthenticationUseBasic ([out, retval] long *value);
  142. [id (11)] HRESULT ProxyAuthenticationUseDigest ([out, retval] long *value);
  143. };
  144. [dual, object, local, oleautomation, nonextensible, uuid (fc84dc58-1286-40c4-9da0-c8ef6Ec241e0)]
  145. interface IWSManSession : IDispatch {
  146. [id (1)] HRESULT Get ([in] VARIANT resourceUri,[in, defaultvalue (0)] long flags,[out, retval] BSTR *resource);
  147. [id (2)] HRESULT Put ([in] VARIANT resourceUri,[in] BSTR resource,[in, defaultvalue (0)] long flags,[out, retval] BSTR *resultResource);
  148. [id (3)] HRESULT Create ([in] VARIANT resourceUri,[in] BSTR resource,[in, defaultvalue (0)] long flags,[out, retval] BSTR *newUri);
  149. [id (4)] HRESULT Delete ([in] VARIANT resourceUri,[in, defaultvalue (0)] long flags);
  150. [id (5)] HRESULT Invoke ([in] BSTR actionUri,[in] VARIANT resourceUri,[in] BSTR parameters,[in, defaultvalue (0)] long flags,[out, retval] BSTR *result);
  151. [id (6)] HRESULT Enumerate ([in] VARIANT resourceUri,[in, defaultvalue (L"")] BSTR filter,[in, defaultvalue (L"")] BSTR dialect,[in, defaultvalue (0)] long flags,[out, retval] IDispatch **resultSet);
  152. [id (7)] HRESULT Identify ([in, defaultvalue (0)] long flags,[out, retval] BSTR *result);
  153. [id (8), propget] HRESULT Error ([out, retval] BSTR *value);
  154. [id (9), propget] HRESULT BatchItems ([out, retval] long *value);
  155. [id (9), propput] HRESULT BatchItems ([in] long value);
  156. [id (10), propget] HRESULT Timeout ([out, retval] long *value);
  157. [id (10), propput] HRESULT Timeout ([in] long value);
  158. };
  159. [dual, object, local, oleautomation, nonextensible, uuid (f3457ca9-abb9-4fa5-b850-90e8ca300e7f)]
  160. interface IWSManEnumerator : IDispatch {
  161. [id (1)] HRESULT ReadItem ([out, retval] BSTR *resource);
  162. [id (2), propget] HRESULT AtEndOfStream ([out, retval] VARIANT_BOOL *eos);
  163. [id (8), propget] HRESULT Error ([out, retval] BSTR *value);
  164. };
  165. [dual, object, local, oleautomation, nonextensible, uuid (a7a1ba28-de41-466a-ad0a-c4059ead7428)]
  166. interface IWSManResourceLocator : IDispatch {
  167. [id (1), propput] HRESULT ResourceURI ([in] BSTR uri);
  168. [id (1), propget] HRESULT ResourceURI ([out, retval] BSTR *uri);
  169. [id (2)] HRESULT AddSelector ([in] BSTR resourceSelName,[in] VARIANT selValue);
  170. [id (3)] HRESULT ClearSelectors ();
  171. [id (4), propget] HRESULT FragmentPath ([out, retval] BSTR *text);
  172. [id (4), propput] HRESULT FragmentPath ([in] BSTR text);
  173. [id (5), propget] HRESULT FragmentDialect ([out, retval] BSTR *text);
  174. [id (5), propput] HRESULT FragmentDialect ([in] BSTR text);
  175. [id (6)] HRESULT AddOption ([in] BSTR OptionName,[in] VARIANT OptionValue,[in, defaultvalue (0)] BOOL mustComply);
  176. [id (7), propput] HRESULT MustUnderstandOptions ([in] BOOL mustUnderstand);
  177. [id (7), propget] HRESULT MustUnderstandOptions ([out, retval] BOOL *mustUnderstand);
  178. [id (8)] HRESULT ClearOptions ();
  179. [id (9), propget] HRESULT Error ([out, retval] BSTR *value);
  180. }
  181. [object, local, oleautomation, nonextensible, hidden, uuid (effaead7-7ec8-4716-b9Be-f2e7e9fb4adb)]
  182. interface IWSManResourceLocatorInternal : IUnknown {
  183. }
  184. [object, local, oleautomation, nonextensible, hidden, uuid (04ae2b1d-9954-4d99-94a9-A961E72C3A13)]
  185. interface IWSManInternal : IDispatch {
  186. [id (2)] HRESULT ConfigSDDL ([in] IDispatch *session,[in] VARIANT resourceUri,[in, defaultvalue (0)] long flags,[out, retval] BSTR *resource);
  187. };
  188. cpp_quote("#endif")