Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

144 lines
4.0 KiB

// SceProviderLib.idl : IDL source for sceprov.dll
//
// This file will be processed by the MIDL tool to
// produce the type library (SceProviderLib.tlb) and marshalling code.
import "oaidl.idl";
import "ocidl.idl";
import "wbemcli.idl";
interface IWbemServices;
#define _MIDL_USE_GUIDDEF_
typedef enum tagEnumProptyType
{
SceProperty_Invalid,
SceProperty_Key,
SceProperty_NonKey,
}SceObjectPropertyType;
[
object,
uuid(ab1ff71d-fff7-4162-818f-13d6e30c3110),
helpstring("SCE Provider Path Parser Interface"),
pointer_default(unique)
]
interface IScePathParser : IUnknown
{
HRESULT ParsePath([in, string] LPCWSTR strObjectPath);
};
[
object,
uuid(f3de3238-15bc-4e65-985a-dac6a95bf902),
helpstring("SCE Provider Query Parser Interface"),
pointer_default(unique)
]
interface ISceQueryParser : IUnknown
{
HRESULT ParseQuery([in, string] LPCWSTR strQuery, [in, string] LPCWSTR strQueryingPropName);
HRESULT GetClassCount([out] DWORD* pdwCount);
HRESULT GetClassName([in] int iIndex, [out] BSTR* pbstrClassName);
HRESULT GetQueryingPropertyValueCount([out] DWORD* pdwCount);
HRESULT GetQueryingPropertyValue([in] int iIndex, [out] BSTR *pbstrStorePath);
};
[
object,
uuid(615567d6-5c02-4585-a79e-165f6ba247b6),
helpstring("SCE Provider Key Chain Interface"),
pointer_default(unique)
]
interface ISceKeyChain : IUnknown
{
HRESULT GetNamespace([out] BSTR* pbstrNamespace);
HRESULT GetClassName([out] BSTR* pbstrClassName);
HRESULT GetKeyPropertyCount([out] DWORD* pCount);
HRESULT GetKeyPropertyValue([in, string] LPCWSTR pszKeyPropName, [out] VARIANT* pvarValue);
HRESULT GetKeyPropertyValueByIndex([in] DWORD dwIndex, [out] BSTR* pbstrKeyPropName, [out] VARIANT* pvarValue);
};
[
object,
uuid(91f0e463-9d96-48e6-9a3f-9ee37147afba),
helpstring("SCE Provider Persist Interface"),
pointer_default(unique)
]
interface IScePersistMgr : IUnknown
{
HRESULT Attach([in] REFIID guid, [in, iid_is(guid)] IUnknown* pObj);
HRESULT Save();
HRESULT Load([in] BSTR bstrStorePath, [in] IWbemObjectSink *pHandler);
HRESULT Delete([in] BSTR bstrStorePath, [in] IWbemObjectSink *pHandler);
};
[
object,
uuid(b7bdaef5-fb63-4027-b329-1025275525c1),
helpstring("SCE Class Object Interface"),
pointer_default(unique)
]
interface ISceClassObject : IUnknown
{
HRESULT GetPersistPath([out] BSTR* pbstrPath);
HRESULT GetClassName([out] BSTR* pbstrClassName);
HRESULT GetLogPath([out] BSTR* pbstrPath);
HRESULT Validate();
HRESULT Attach([in] IWbemClassObject* pInst);
HRESULT GetClassObject([out] IWbemClassObject** ppInst);
HRESULT GetProperty([in, string] LPCWSTR pszPropName, [out] VARIANT* pValue);
HRESULT GetPropertyCount([in] SceObjectPropertyType type, [out] DWORD* pCount);
HRESULT GetPropertyValue([in] SceObjectPropertyType type, [in] DWORD dwIndex, [out] BSTR* pbstrPropName, [out] VARIANT* pValue);
};
[
uuid(1e5a3c0d-5135-40d3-be86-5655824dacf6),
version(1.0),
helpstring("SCE Provider 1.0 Type Library")
]
library SceProviderLib
{
importlib("stdole32.tlb");
importlib("stdole2.tlb");
[
uuid(bd7570f7-9f0e-4c6b-b525-e078691b6d0e),
helpstring("Security Configuration Engine Provider")
]
coclass SceProv
{
[default] interface IWbemServices;
};
[
uuid(c97104f0-ef70-4dfc-b298-907c09021229),
helpstring("SCE Path Parser Class")
]
coclass ScePathParser
{
[default] interface IScePathParser;
};
[
uuid(533cfe07-c27e-48c7-8458-f035d3276908),
helpstring("SCE Query Parser Class")
]
coclass SceQueryParser
{
[default] interface ISceQueryParser;
};
[
uuid(eadf850f-e22b-4bc4-a4c7-ac9f823c13fa),
helpstring("SCE Provider Persist Class")
]
coclass ScePersistMgr
{
[default] interface IScePersistMgr;
};
};