// WMIScriptUtils.idl : IDL source for WMIScriptUtils.dll
//

// This file will be processed by the MIDL tool to
// produce the type library (WMIScriptUtils.tlb) and marshalling code.

import "oaidl.idl";
import "ocidl.idl";
#include "olectl.h"
	

	[
		object,
		uuid(F3408C9C-1E88-4DBE-BD71-0303C1E21A72),
		dual,
		helpstring("IWMIObjectBroker Interface"),
		pointer_default(unique)
	]
	interface IWMIObjectBroker : IDispatch
	{
		[id(1), helpstring("method CreateObject")] HRESULT CreateObject([in] BSTR strProgId, [out, retval] IDispatch **obj);
		[id(2), helpstring("method CanCreateObject")] HRESULT CanCreateObject([in] BSTR strProgId, [out, retval] VARIANT_BOOL *bResult);
	};
	[
		object,
		uuid(B8B2DB7D-68E8-46B0-A08E-AAF46F8B40D4),
		dual,
		helpstring("IWMIObjectBrokerRegistration Interface"),
		pointer_default(unique)
	]
	interface IWMIObjectBrokerRegistration : IDispatch
	{
		[id(1), helpstring("method Register")] HRESULT Register([in] BSTR strProgId, [out, retval] VARIANT_BOOL *bResult);
		[id(2), helpstring("method UnRegister")] HRESULT UnRegister([in] BSTR strProgId, [out, retval] VARIANT_BOOL *bResult);
	};

[
	uuid(6682E69C-4751-43E8-9F1C-F11D50C3328F),
	version(1.0),
	helpstring("WMIScriptUtils 1.0 Type Library")
]
library WMISCRIPTUTILSLib
{
	importlib("stdole32.tlb");
	importlib("stdole2.tlb");

	[
		uuid(4BA59771-8FBF-4E67-9917-3BBB39B743AB),
		helpstring("WMIObjectBroker Class")
	]
	coclass WMIObjectBroker
	{
		[default] interface IWMIObjectBroker;
	};
	[
		uuid(9ECF8EC8-A9ED-47DF-BB9A-81DCB3698507),
		helpstring("WMIObjectBrokerRegistration Class")
	]
	coclass WMIObjectBrokerRegistration
	{
		[default] interface IWMIObjectBrokerRegistration;
	};
};