cpp_quote("/***************************************************************/" ) cpp_quote("/* */" ) cpp_quote("/* Copyright (C) Microsoft Corporation. All rights reserved. */" ) cpp_quote("/* */" ) /* wsmandisp.idl */ /* */ cpp_quote("/* WSMAN IDispatch Compatible Access for Automation clients. */" ) cpp_quote("/* */" ) cpp_quote("/***************************************************************/" ) [ uuid(F010BE25-296D-4036-980F-5A0669A17577), lcid(0x00), version(1.0), helpstring("Microsoft WSMAN Automation V1.0 Library") ] library WSManAutomation { importlib("stdole2.tlb"); typedef [v1_enum] enum _WSManSessionFlags { WSManFlagUTF8 = 0x00000001, WSManFlagCredUsernamePassword = 0x00001000, WSManFlagSkipCACheck = 0x00002000, WSManFlagSkipCNCheck = 0x00004000, WSManFlagUseNoAuthentication = 0x00008000, WSManFlagUseDigest = 0x00010000, WSManFlagUseNegotiate = 0x00020000, WSManFlagUseBasic = 0x00040000, WSManFlagUseKerberos = 0x00080000, WSManFlagNoEncryption = 0x00100000, WSManFlagUseClientCertificate = 0x00200000, WSManFlagEnableSPNServerPort = 0x00400000, WSManFlagUTF16 = 0x00800000, WSManFlagUseCredSsp = 0x01000000, WSManFlagSkipRevocationCheck = 0x02000000, WSManFlagAllowNegotiateImplicitCredentials = 0x04000000, WSManFlagUseSsl = 0x08000000 } WSManSessionFlags; typedef [v1_enum] enum _WSManEnumFlags { WSManFlagNonXmlText = 0x00000001, WSManFlagReturnObject = 0x00000000, WSManFlagReturnEPR = 0x00000002, WSManFlagReturnObjectAndEPR = 0x00000004, WSManFlagHierarchyDeep = 0x00000000, WSManFlagHierarchyShallow = 0x00000020, WSManFlagHierarchyDeepBasePropsOnly = 0x00000040, WSManFlagAssociatedInstance = 0x00000000, WSManFlagAssociationInstance = 0x00000080 } WSManEnumFlags; typedef [v1_enum] enum _WSManProxyAccessTypeFlags { WSManProxyIEConfig = 0x00000001, WSManProxyWinHttpConfig = 0x00000002, WSManProxyAutoDetect = 0x00000004, WSManProxyNoProxyServer = 0x00000008 } WSManProxyAccessTypeFlags; typedef [v1_enum] enum _WSManProxyAuthenticationFlags { WSManFlagProxyAuthenticationUseNegotiate = 0x00000001, WSManFlagProxyAuthenticationUseBasic = 0x00000002, WSManFlagProxyAuthenticationUseDigest = 0x00000004 } WSManProxyAuthenticationFlags; interface IWSMan; interface IWSManEx; interface IWSManEx2; interface IWSManEx3; interface IWSManConnectionOptions; interface IWSManConnectionOptionsEx; interface IWSManConnectionOptionsEx2; interface IWSManSession; interface IWSManSessionEx; interface IWSManEnumerator; interface IWSManResourceLocator; interface IWSManResourceLocatorInternal; [ uuid(BCED617B-EC03-420b-8508-977DC7A686BD) ] coclass WSMan { interface IWSMan; interface IWSManEx; interface IWSManEx2; [default] interface IWSManEx3; }; interface IWSManInternal ; [ uuid(7DE087A5-5DCB-4df7-BB12-0924AD8FBD9A) ] coclass WSManInternal { interface IWSManInternal; }; }; [ dual, object, uuid(190D8637-5CD3-496d-AD24-69636BB5A3B5), oleautomation, local, nonextensible, hidden ] interface IWSMan : IDispatch { [id(1)] HRESULT CreateSession( [in, defaultvalue("")] BSTR connection, [in, defaultvalue(0)] long flags, [in, defaultvalue(0)] IDispatch * connectionOptions, [out, retval] IDispatch ** session); [id(2)] HRESULT CreateConnectionOptions( [out, retval] IDispatch ** connectionOptions); [id(3), propget] HRESULT CommandLine([out, retval] BSTR * value); [id(4), propget] HRESULT Error([out, retval] BSTR * value); }; [ dual, object, uuid(2D53BDAA-798E-49e6-A1AA-74D01256F411), oleautomation, local, nonextensible, hidden ] interface IWSManEx : IWSMan { [id(5)] HRESULT CreateResourceLocator( [in, defaultvalue("")] BSTR strResourceLocator, [out, retval] IDispatch ** newResourceLocator ); [id(6)] HRESULT SessionFlagUTF8([out, retval] long *flags); [id(7)] HRESULT SessionFlagCredUsernamePassword([out, retval] long *flags); [id(8)] HRESULT SessionFlagSkipCACheck([out, retval] long *flags); [id(9)] HRESULT SessionFlagSkipCNCheck([out, retval] long *flags); [id(10)] HRESULT SessionFlagUseDigest([out, retval] long *flags); [id(11)] HRESULT SessionFlagUseNegotiate([out, retval] long *flags); [id(12)] HRESULT SessionFlagUseBasic([out, retval] long *flags); [id(13)] HRESULT SessionFlagUseKerberos([out, retval] long *flags); [id(14)] HRESULT SessionFlagNoEncryption([out, retval] long *flags); [id(15)] HRESULT SessionFlagEnableSPNServerPort([out, retval] long *flags); [id(16)] HRESULT SessionFlagUseNoAuthentication([out, retval] long *flags); [id(17)] HRESULT EnumerationFlagNonXmlText([out, retval] long *flags); [id(18)] HRESULT EnumerationFlagReturnEPR([out, retval] long *flags); [id(19)] HRESULT EnumerationFlagReturnObjectAndEPR([out, retval] long *flags); [id(20)] HRESULT GetErrorMessage([in] DWORD errorNumber, [out, retval] BSTR* errorMessage); [id(21)] HRESULT EnumerationFlagHierarchyDeep([out, retval] long *flags); [id(22)] HRESULT EnumerationFlagHierarchyShallow([out, retval] long *flags); [id(23)] HRESULT EnumerationFlagHierarchyDeepBasePropsOnly([out, retval] long *flags); [id(24)] HRESULT EnumerationFlagReturnObject([out, retval] long *flags); }; [ dual, object, uuid(1D1B5AE0-42D9-4021-8261-3987619512E9), oleautomation, local, nonextensible, hidden ] interface IWSManEx2 : IWSManEx { [id(25)] HRESULT SessionFlagUseClientCertificate([out, retval] long *flags); }; [ dual, object, uuid(6400E966-011D-4eac-8474-049E0848AFAD), oleautomation, local, nonextensible, hidden ] interface IWSManEx3 : IWSManEx2 { [id(26)] HRESULT SessionFlagUTF16([out, retval] long *flags); [id(27)] HRESULT SessionFlagUseCredSsp([out, retval] long *flags); [id(28)] HRESULT EnumerationFlagAssociationInstance([out, retval] long *flags); [id(29)] HRESULT EnumerationFlagAssociatedInstance([out, retval] long *flags); [id(30)] HRESULT SessionFlagSkipRevocationCheck([out, retval] long *flags); [id(31)] HRESULT SessionFlagAllowNegotiateImplicitCredentials([out, retval] long *flags); [id(32)] HRESULT SessionFlagUseSsl([out, retval] long *flags); }; [ dual, object, uuid(F704E861-9E52-464f-B786-DA5EB2320FDD), oleautomation, local, nonextensible ] interface IWSManConnectionOptions : IDispatch { [id(1), propget] HRESULT UserName([out, retval] BSTR * name); [id(1), propput] HRESULT UserName([in] BSTR name); [id(2), propput] HRESULT Password([in] BSTR password); }; [ dual, object, uuid(EF43EDF7-2A48-4d93-9526-8BD6AB6D4A6B), oleautomation, local, nonextensible ] interface IWSManConnectionOptionsEx : IWSManConnectionOptions { [id(3), propget] HRESULT CertificateThumbprint([out, retval] BSTR * thumbprint); [id(3), propput] HRESULT CertificateThumbprint([in] BSTR thumbprint); }; [ dual, object, uuid(F500C9EC-24EE-48ab-B38D-FC9A164C658E), oleautomation, local, nonextensible ] interface IWSManConnectionOptionsEx2 : IWSManConnectionOptionsEx { [id(4)] HRESULT SetProxy( [in, defaultvalue(0)] long accessType, [in, defaultvalue(0)] long authenticationMechanism, [in, defaultvalue(NULL)] BSTR userName, [in, defaultvalue(NULL)] BSTR password); [id(5)] HRESULT ProxyIEConfig([out, retval] long *value); [id(6)] HRESULT ProxyWinHttpConfig([out, retval] long *value); [id(7)] HRESULT ProxyAutoDetect([out, retval] long *value); [id(8)] HRESULT ProxyNoProxyServer([out, retval] long *value); [id(9)] HRESULT ProxyAuthenticationUseNegotiate([out, retval] long *value); [id(10)] HRESULT ProxyAuthenticationUseBasic([out, retval] long *value); [id(11)] HRESULT ProxyAuthenticationUseDigest([out, retval] long *value); }; [ dual, object, uuid(FC84FC58-1286-40c4-9DA0-C8EF6EC241E0), oleautomation, local, nonextensible ] interface IWSManSession : IDispatch { [id(1)] HRESULT Get( [in] VARIANT resourceUri, [in, defaultvalue(0)] long flags, [out, retval] BSTR * resource); [id(2)] HRESULT Put( [in] VARIANT resourceUri, [in] BSTR resource, [in, defaultvalue(0)] long flags, [out, retval] BSTR * resultResource); [id(3)] HRESULT Create( [in] VARIANT resourceUri, [in] BSTR resource, [in, defaultvalue(0)] long flags, [out, retval] BSTR* newUri); [id(4)] HRESULT Delete( [in] VARIANT resourceUri, [in, defaultvalue(0)] long flags); [id(5)] HRESULT Invoke( [in] BSTR actionUri, [in] VARIANT resourceUri, [in] BSTR parameters, [in, defaultvalue(0)] long flags, [out, retval] BSTR * result); [id(6)] HRESULT Enumerate( [in] VARIANT resourceUri, [in, defaultvalue("")] BSTR filter, [in, defaultvalue("")] BSTR dialect, [in, defaultvalue(0)] long flags, [out, retval] IDispatch ** resultSet); [id(7)] HRESULT Identify( [in, defaultvalue(0)] long flags, [out, retval] BSTR * result); [id(8), propget] HRESULT Error([out, retval] BSTR * value); [id(9), propget] HRESULT BatchItems([out, retval] long * value); [id(9), propput] HRESULT BatchItems([in] long value); [id(10), propget] HRESULT Timeout([out, retval] long * value); [id(10), propput] HRESULT Timeout([in] long value); }; [ dual, object, uuid(F3457CA9-ABB9-4fa5-B850-90E8CA300E7F), oleautomation, local, nonextensible ] interface IWSManEnumerator : IDispatch { [id(1)] HRESULT ReadItem([out, retval] BSTR * resource); [id(2), propget] HRESULT AtEndOfStream([out, retval] VARIANT_BOOL * eos); [id(8), propget] HRESULT Error([out, retval] BSTR * value); }; [ dual, object, uuid(A7A1BA28-DE41-466a-AD0A-C4059EAD7428), oleautomation, local, nonextensible ] interface IWSManResourceLocator : IDispatch { [id(1), propput, helpstring("Set the resource URI. Must contain path only -- query string is not allowed here.")] HRESULT ResourceURI([in] BSTR uri); [id(1), propget, helpstring("Get the resource URI")] HRESULT ResourceURI([out, retval] BSTR *uri); /////////////////////////////////////////////////////// // Selectors [id(2), helpstring("Add selector to resource locator")] HRESULT AddSelector( [in] BSTR resourceSelName, [in] VARIANT selValue ); [id(3), helpstring("Clear all selectors")] HRESULT ClearSelectors(); /////////////////////////////////////////////////////// // Fragment [id(4), propget, helpstring("Gets the fragment path")] HRESULT FragmentPath([out, retval] BSTR * text); [id(4), propput, helpstring("Sets the Fragment path")] HRESULT FragmentPath([in] BSTR text); [id(5), propget, helpstring("Gets the Fragment dialect")] HRESULT FragmentDialect([out, retval] BSTR * text); [id(5), propput, helpstring("Sets the Fragment dialect")] HRESULT FragmentDialect([in] BSTR text); /////////////////////////////////////////////////////// // Options [id(6), helpstring("Add option to resource locator")] HRESULT AddOption( [in] BSTR OptionName, [in] VARIANT OptionValue, [in, defaultvalue(0)] BOOL mustComply ); [id(7), propput, helpstring("Sets the MustUnderstandOptions value")] HRESULT MustUnderstandOptions([in] BOOL mustUnderstand); [id(7), propget, helpstring("Gets MustUnderstandOptions value")] HRESULT MustUnderstandOptions([out, retval] BOOL *mustUnderstand); [id(8), helpstring("Clear all options")] HRESULT ClearOptions(); [id(9), propget] HRESULT Error([out, retval] BSTR * value); } [ object, uuid(EFFAEAD7-7EC8-4716-B9BE-F2E7E9FB4ADB), oleautomation, local, nonextensible, hidden ] interface IWSManResourceLocatorInternal : IUnknown { } [ object, uuid(04AE2B1D-9954-4D99-94A9-A961E72C3A13), oleautomation, local, nonextensible, hidden ] interface IWSManInternal : IDispatch { [id(2)] HRESULT ConfigSDDL( [in] IDispatch * session, [in] VARIANT resourceUri, [in, defaultvalue(0)] long flags, [out, retval] BSTR * resource); };