| 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") |