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