123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372 |
- import "msxml.idl";
- import "wbemdisp.idl";
- [
- uuid(979D18F7-D1D2-4ee2-803D-A4C7A98DF75B),
- lcid(0x00),
- version(1.0),
- helpstring("Microsoft WMI XML Transformer V1.0")
- ]
- library WmiXMLTransformer
- {
- importlib("stdole32.tlb");
- interface IWmiXMLTransformer;
- typedef
- [
- v1_enum,
- uuid(28D1EEA5-D41E-46c2-B42D-6CE0B9B4D7A7),
- helpstring("Specifies Encoding required")
- ]
- enum WmiXMLEncoding
- {
- // TODO - integrate this enumeration with the core team's when they are ready
- wmiXML_CIM_DTD_2_0 = 0x0, // The DMTF DTD
- wmiXML_WMI_DTD_2_0 = 0x1, // Same as the WMI Nova DTD
- wmiXML_WMI_DTD_WHISTLER = 0x2
- } WmiXMLEncoding;
- typedef
- [
- v1_enum,
- uuid(598BCA7A-E40E-4265-8517-C9A86E2FC07E),
- helpstring("Specifies the compilation operation to perform")
- ]
- enum WmiXMLCompilationTypeEnum
- {
- WmiXMLCompilationWellFormCheck = 0x0,
- WmiXMLCompilationValidityCheck = 0x1,
- WmiXMLCompilationFullCompileAndLoad = 0x2
- } WmiXMLCompilationTypeEnum;
- [
- uuid(A2BB0F35-458E-4075-8A4B-F92664943917),
- helpstring("WMI XML Transformer Control")
- ]
- coclass WmiXMLTransformer
- {
- [default] interface IWmiXMLTransformer;
- };
- };
- /*************************************************
- * A collection of IXMLDOMDocuments
- * This is used for output from enumerations and queries
- * The primary purpose of this is to prevent reading of all the data from a socket
- * in the XML/HTTP case. Instead every call to Next() on the enumerator results in further data
- * being read from the socket.
- **************************************************/
- [
- local,
- object,
- uuid(3E46A227-5207-4603-8440-9FCC5AF16407),
- oleautomation,
- dual,
- hidden,
- nonextensible,
- helpstring("A collection of IXMLDOMDocument objects")
- ]
- interface ISWbemXMLDocumentSet : IDispatch
- {
- // Standard property required on all collections
- [id(DISPID_NEWENUM), propget, restricted] HRESULT _NewEnum ([out, retval] IUnknown **pUnk);
- [
- id(DISPID_VALUE),
- helpstring("Not Implemented")
- ]
- HRESULT Item (
- [in] BSTR strObjectPath,
- [in, defaultvalue(0)] long iFlags,
- [out, retval] IXMLDOMDocument **ppXMLDocument
- );
- [
- id(1),
- propget,
- helpstring("Not Implemented")
- ]
- HRESULT Count ([out, retval] long *iCount);
- [
- id(2),
- helpstring("The next item in this collection. This is primarily for C++ programs that dont want to use the enumerator")
- ]
- HRESULT NextDocument ([out, retval, unique] IXMLDOMDocument **ppDoc);
- [
- id(3),
- helpstring("Skips past the next document in the enumerator")
- ]
- HRESULT SkipNextDocument ();
- };
- /*************************************************
- * The primary interface for the transformer.
- * This scriptable interface allows for both read (get, enums, queries)
- * and write (compile) operations. It also exposes a few
- * properties to control the amount of information in the output,
- * for authentication credentials etc.
- **************************************************/
- [
- object,
- local,
- uuid(FB624102-3145-4daf-B0EA-FF5A31178600),
- dual,
- hidden,
- nonextensible,
- oleautomation,
- helpstring("WMI XML Transformer Dual Interface")
- ]
- interface IWmiXMLTransformer : IDispatch
- {
- [
- propget,
- id(1),
- helpstring("Specifies the type of XML Encoding to use")
- ]
- HRESULT XMLEncodingType([retval, out] WmiXMLEncoding *piEncoding);
- [
- propput,
- id(1)
- ]
- HRESULT XMLEncodingType([in] WmiXMLEncoding iEncoding);
- [
- propget,
- id(2),
- helpstring("Specifies the level of Qualifier information in the output XML")
- ]
- HRESULT QualifierFilter([retval, out] VARIANT_BOOL *bQualifierFilter);
- [
- propput,
- id(2)
- ]
- HRESULT QualifierFilter([in] VARIANT_BOOL bQualifierFilter);
- [
- propget,
- id(3),
- helpstring("Specifies whether to decorate elements with Class origin information")
- ]
- HRESULT ClassOriginFilter([retval, out] VARIANT_BOOL *bClassOriginFilter);
- [
- propput,
- id(3)
- ]
- HRESULT ClassOriginFilter([in] VARIANT_BOOL bClassOriginFilter);
- [
- propget,
- id(4),
- helpstring("Specifies the user name to be used for the operation")
- ]
- HRESULT User([retval, out] BSTR * strUser);
- [
- propput,
- id(4)
- ]
- HRESULT User ([in] BSTR strUser);
- [
- propget,
- id(5),
- helpstring("Specifies the password name to be used for the operation")
- ]
- HRESULT Password([retval, out] BSTR * strPassword);
- [
- propput,
- id(5)
- ]
- HRESULT Password ([in] BSTR strPassword);
- [
- propget,
- id(6),
- helpstring("Specifies the Authority (domain/machine)name to be used for the operation")
- ]
- HRESULT Authority([retval, out] BSTR * strAuthority);
- [
- propput,
- id(6)
- ]
- HRESULT Authority ([in] BSTR strAuthority);
- [
- propget,
- id(7),
- helpstring("Specifies the Impersonation level used for the operation. Standard RPC constants")
- ]
- HRESULT ImpersonationLevel([retval, out] DWORD * pdwImpersonationLevel);
- [
- propput,
- id(7)
- ]
- HRESULT ImpersonationLevel ([in] DWORD dwImpersonationLevel);
- [
- propget,
- id(8),
- helpstring("Specifies the AuthenticationLevel used for the operation. Standard RPC constants")
- ]
- HRESULT AuthenticationLevel([retval, out] DWORD * pdwAuthenticationLevel);
- [
- propput,
- id(8)
- ]
- HRESULT AuthenticationLevel ([in] DWORD dwAuthenticationLevel);
- [
- propget,
- id(9),
- helpstring("Specifies the locale name to be used for the operation")
- ]
- HRESULT Locale([retval, out] BSTR * strLocale);
- [
- propput,
- id(9)
- ]
- HRESULT Locale ([in] BSTR strLocale);
- [
- propget,
- id(10),
- helpstring("Specifies whether only local elements (properties and methods) are to be included in output")
- ]
- HRESULT LocalOnly([retval, out] VARIANT_BOOL *bLocalOnly);
- [
- propput,
- id(10)
- ]
- HRESULT LocalOnly([in] VARIANT_BOOL bLocalOnly);
- [
- helpstring("Maps a single class or instance to XML"),
- id(11)
- ]
- HRESULT GetObject(
- // Identifies an object name to get
- [in] BSTR strObjectPath,
- // The IWbemContext object
- [in, defaultvalue(0)] /*ISWbemNamedValueSet*/IDispatch *pCtx,
- // On successful return contains XML document stream
- [out,retval] IXMLDOMDocument **ppXMLDocument
- );
- [
- helpstring("Maps a query result set to XML"),
- id(12)
- ]
- HRESULT ExecQuery(
- // Identifies a namespace to connect to
- [in] BSTR strNamespacePath,
- // CIM query to be evaluated
- [in] BSTR strQuery,
- // The language name of the query to be evaluated
- [in, defaultvalue("WQL")] BSTR strQueryLanguage,
- // The IWbemContext object
- [in, defaultvalue(0)] /*ISWbemNamedValueSet*/IDispatch *pCtx,
- // On successful return contains a collection of documents
- [out,retval] ISWbemXMLDocumentSet **ppXMLDocumentSet
- );
- [
- helpstring("Enumerates sub classes of a specified class"),
- id(13)
- ]
- HRESULT EnumClasses(
- // Identifies the class path of the super class
- [in] BSTR strSuperClassPath,
- // Whether to do a deep enumeration
- [in] VARIANT_BOOL bDeep,
- // The IWbemContext object
- [in, defaultvalue(0)] /*ISWbemNamedValueSet*/IDispatch *pCtx,
- // On successful return contains a collection of documents
- [out,retval] ISWbemXMLDocumentSet **ppXMLDocumentSet
- );
- [
- helpstring("Enumerates instances of a specific class"),
- id(14)
- ]
- HRESULT EnumInstances(
- // Identifies the class path of the class whose instances are to be enumerated
- [in] BSTR strClassPath,
- // Whether to do a deep enumeration
- [in] VARIANT_BOOL bDeep,
- // The IWbemContext object
- [in, defaultvalue(0)] /*ISWbemNamedValueSet*/IDispatch *pCtx,
- // On successful return contains a collection of documents
- [out,retval] ISWbemXMLDocumentSet **ppXMLDocumentSet
- );
- [
- helpstring("Enumerates sub class names of a specific class"),
- id(15)
- ]
- HRESULT EnumClassNames(
- // Identifies the class path of the super class
- [in] BSTR strSuperClassPath,
- // Whether to do a deep enumeration
- [in] VARIANT_BOOL bDeep,
- // The IWbemContext object
- [in, defaultvalue(0)] /*ISWbemNamedValueSet*/IDispatch *pCtx,
- // On successful return contains a collection of documents
- [out,retval] ISWbemXMLDocumentSet **ppXMLDocumentSet
- );
- [
- helpstring("Enumerate instance names of a specific class"),
- id(16)
- ]
- HRESULT EnumInstanceNames(
- // Identifies the class path of the class whose instances are to be enumerated
- [in] BSTR strClassPath,
- // The IWbemContext object
- [in, defaultvalue(0)] /*ISWbemNamedValueSet*/IDispatch *pCtx,
- // On successful return contains a collection of documents
- [out,retval] ISWbemXMLDocumentSet **ppXMLDocumentSet
- );
- [
- helpstring("Compile a specified file"),
- id(17)
- ]
- HRESULT Compile (
- // If this is a VT_BSTR, then it the string is used as the input XML data
- // If this is a VT_UNKNOWN, then it is queried for Istream and the result is used
- // as the input stream
- [in] VARIANT *pvInputSource,
- // Identifies a namespace to connect to
- [in] BSTR strNamespacePath,
- // Class Flags - A combination of the flags used for PutClass WMI call
- [in] LONG lClassFlags,
- // Instance Flags - A combination of the flags used for PutInstance WMI call
- [in] LONG lInstanceFlags,
- // What operation to do
- [in] WmiXMLCompilationTypeEnum iOperation,
- // The IWbemContext object
- [in] /*ISWbemNamedValueSet*/IDispatch *pCtx,
- // Whether the compilation was successful
- [out, retval] VARIANT_BOOL *pStatus
- );
- [
- id(18),
- propget,
- helpstring ("The collection of privileges for this object")
- ]
- HRESULT Privileges ([out, retval] ISWbemPrivilegeSet **objWbemPrivilegeSet);
- [
- id(19),
- propget,
- helpstring ("The last compilation error, if any")
- ]
- HRESULT CompilationErrors ([out, retval] BSTR *pstrErrors);
- };
|