// SSRTE.idl : IDL source for SSRTE.dll // // This file will be processed by the MIDL tool to // produce the type library (SSRTE.tlb) and marshalling code. import "oaidl.idl"; import "ocidl.idl"; cpp_quote("//") cpp_quote("// ISsrCore interface guid") cpp_quote("//") cpp_quote("//eb15e3fe-d412-4b2d-8810-3d3d16091aeb") cpp_quote("DEFINE_GUID(IID_ISsrCore, 0xeb15e3fe,0xd412,0x4b2d,0x88,0x10,0x3d,0x3d,0x16,0x09,0x1a,0xeb);") cpp_quote("") cpp_quote("//") cpp_quote("// ISsrActionData interface guid") cpp_quote("//") cpp_quote("//69e5f6f4-c7e1-4bec-9fac-05e283597631") cpp_quote("DEFINE_GUID(IID_ISsrActionData, 0x69e5f6f4,0xc7e1,0x4bec,0x9f,0xac,0x05,0xe2,0x83,0x59,0x76,0x31);") cpp_quote("") cpp_quote("//") cpp_quote("// ISsrEngine interface guid") cpp_quote("//") cpp_quote("//B2B6867C-4AC5-4AC3-9195-B81056278BFA") cpp_quote("DEFINE_GUID(IID_ISsrEngine, 0xB2B6867C,0x4AC5,0x4AC3,0x91,0x95,0xB8,0x10,0x56,0x27,0x8B,0xFA);") cpp_quote("") cpp_quote("//") cpp_quote("// ISsrMembership interface guid") cpp_quote("//") cpp_quote("//0431c91d-60cd-4744-abf0-0398b4407934") cpp_quote("DEFINE_GUID(IID_ISsrMembership, 0x0431c91d,0x60cd,0x4744,0xab,0xf0,0x03,0x98,0xb4,0x40,0x79,0x34);") cpp_quote("") cpp_quote("//") cpp_quote("// ISsrMemberAccess interface guid") cpp_quote("//") cpp_quote("//00bf629c-5cb2-42c9-8e19-18a86a67b6ce") cpp_quote("DEFINE_GUID(IID_ISsrMemberAccess, 0x00bf629c,0x5cb2,0x42c9,0x8e,0x19,0x18,0xa8,0x6a,0x67,0xb6,0xce);") cpp_quote("") cpp_quote("//") cpp_quote("// ISsrMember interface guid") cpp_quote("//") cpp_quote("//f5afac44-bd77-46b1-a280-a7af9568682d") cpp_quote("DEFINE_GUID(IID_ISsrMember, 0xf5afac44,0xbd77,0x46b1,0xa2,0x80,0xa7,0xaf,0x95,0x68,0x68,0x2d);") cpp_quote("") cpp_quote("//") cpp_quote("// ISsrFeedbackSink interface guid") cpp_quote("//") cpp_quote("//7c087389-66d3-4088-9495-e022c7f48d38") cpp_quote("DEFINE_GUID(IID_ISsrFeedbackSink, 0x7c087389,0x66d3,0x4088,0x94,0x95,0xe0,0x22,0xc7,0xf4,0x8d,0x38);") cpp_quote("") cpp_quote("//") cpp_quote("// ISsrLog interface guid") cpp_quote("//") cpp_quote("//4062d4e6-2f42-4ec1-8d0f-b6adf5bfbfa3") cpp_quote("DEFINE_GUID(IID_ISsrLog, 0x4062d4e6,0x2f42,0x4ec1,0x8d,0x0f,0xb6,0xad,0xf5,0xbf,0xbf,0xa3);") cpp_quote("") cpp_quote("//") cpp_quote("// ISCEAgent interface guid") cpp_quote("//") cpp_quote("//E95CF71E-2E2F-4A9F-A653-5A8D5946127E") cpp_quote("DEFINE_GUID(IID_ISCEAgent, 0xE95CF71E,0x2E2F,0x4A9F,0xA6,0x53,0x5A,0x8D,0x59,0x46,0x12,0x7E);") cpp_quote("") cpp_quote("//") cpp_quote("// SsrCore class id") cpp_quote("//") cpp_quote("//fe64acb0-e0e7-4b4a-8086-923b5031bca9") cpp_quote("DEFINE_GUID(CLSID_SsrCore, 0xfe64acb0,0xe0e7,0x4b4a,0x80,0x86,0x92,0x3b,0x50,0x31,0xbc,0xa9);") cpp_quote("") cpp_quote("//") cpp_quote("// SsrLog class id") cpp_quote("//") cpp_quote("//5fd4d76a-03e2-46d5-971e-9fe5b209f08e") cpp_quote("DEFINE_GUID(CLSID_SsrLog, 0x5fd4d76a,0x03e2,0x46d5,0x97,0x1e,0x9f,0xe5,0xb2,0x09,0xf0,0x8e);") cpp_quote("") cpp_quote("//") cpp_quote("// SCEAgent class id") cpp_quote("//") cpp_quote("//6906A802-45AB-4C4A-AADE-C4DF06E38FA2") cpp_quote("DEFINE_GUID(CLSID_SCEAgent, 0x6906A802,0x45AB,0x4C4A,0xAA,0xDE,0xC4,0xDF,0x06,0xE3,0x8F,0xA2);") enum EnumSSRActionType { SSR_ACTION_INVALID = 0x00000000, SSR_ACTION_PREPARE = 0x00000001, SSR_ACTION_APPLY = 0x00000002, }; enum EnumSSR_LoadDOM_Flags { SSR_LOADDOM_ASYNC = 0x00000001, SSR_LOADDOM_PRESERVE_WS = 0x00000002, SSR_LOADDOM_RESOLVE_EXTERNAL = 0x00000004, SSR_LOADDOM_VALIDATE_ON_PARSE = 0x00000008, }; enum EnumSSRLogErrorType { SSR_LOG_ERROR_TYPE_Wbem = 0x00000001, SSR_LOG_ERROR_TYPE_COM = 0x00000002, SSR_LOG_ERROR_TYPE_System = 0x00000003, }; enum EnumActionCost { SSR_ACTION_COST_STEPS = 0x00000001, SSR_ACTION_COST_MILLISEC = 0x00000002, }; enum EnumSSRFeedbackMsg { SSR_FB_START = 0x00000001, SSR_FB_END = 0x00000002, SSR_FB_TOTAL_STEPS = 0x00000003, SSR_FB_STEPS_JUST_DONE = 0x00000004, SSR_FB_TRANSFORM_RESULT = 0x00000005, SSR_FB_RUN_SCRIPT = 0x00000006, SSR_FB_EXIT_CODE = 0x00000007, SSR_FB_START_MEMBER_ACTION = 0x00000008, SSR_FB_END_MEMBER_ACTION = 0x00000009, SSR_FB_INFORMATION = 0x00000100, SSR_FB_INFORMATION_MASK = 0x0000FF00, SSR_FB_ERROR_GENERIC = 0x00010000, SSR_FB_ERROR_CRITICAL = 0x00020000, SSR_FB_ERROR_FILE_READ = 0x00030000, SSR_FB_ERROR_FILE_WRITE = 0x00040000, SSR_FB_ERROR_FILE_DEL = 0x00050000, SSR_FB_ERROR_FILE_CREATE = 0x00060000, SSR_FB_ERROR_FILE_MISS = 0x00070000, SSR_FB_ERROR_UNKNOWN_MEMBER = 0x00080000, // unknown extension SSR_FB_ERROR_MEMBER_SCHEMA = 0x00090000, SSR_FB_ERROR_LOAD_MEMBER = 0x000A0000, SSR_FB_ERROR_MEMBER_XML = 0x000B0000, SSR_FB_ERROR_MASK = 0x00FF0000, SSR_FB_ALL_MASK = 0x00FFFFFF, }; [ object, uuid(eb15e3fe-d412-4b2d-8810-3d3d16091aeb), dual, helpstring("ISsrCore"), pointer_default(unique) ] interface ISsrCore : IDispatch { [propget, id(1), helpstring("property ActionData")] HRESULT ActionData([out, retval] VARIANT * pVal); [propget, id(2), helpstring("property Engine")] HRESULT Engine([out, retval] VARIANT * pVal); [propget, id(3), helpstring("property SsrLog")] HRESULT SsrLog([out, retval] VARIANT * pVal); }; [ object, uuid(69e5f6f4-c7e1-4bec-9fac-05e283597631), dual, helpstring("ISsrActionData"), pointer_default(unique) ] interface ISsrActionData : IDispatch { [id(1), helpstring("method GetProperty")] HRESULT GetProperty ( [in] BSTR bstrPropName, [out, retval] VARIANT * pvarPropties ); [id(2), helpstring("method SetProperty")] HRESULT SetProperty ( [in] BSTR bstrPropName, [in] VARIANT varProperties ); [id(5), helpstring("method Reset")] HRESULT Reset(); }; [ object, uuid(B2B6867C-4AC5-4AC3-9195-B81056278BFA), dual, helpstring("ISsrEngine Interface"), pointer_default(unique) ] interface ISsrEngine : IDispatch { [id(1), helpstring("method DoActionVerb")] HRESULT DoActionVerb ( [in] BSTR bstrActionVerb, [in] LONG lActionType, [in] VARIANT varFeedbackSink, [in] LONG lFlag ); }; [ object, uuid(0431c91d-60cd-4744-abf0-0398b4407934), dual, helpstring("ISsrMemberShip Interface"), pointer_default(unique) ] interface ISsrMembership : IDispatch { [id(1), helpstring("method GetAllMembers")] HRESULT GetAllMembers ( [out, retval] VARIANT * pvarArrayMembers ); [id(2), helpstring("method GetMember")] HRESULT GetMember ( [in] BSTR bstrMemberName, [out, retval] VARIANT * pvarMember ); [id(3), helpstring("method GetDirectoryLocation")] HRESULT GetDirectoryLocation ( [in] BSTR bstrActionVerb, [in] BOOL bIsScriptFile, [out, retval] BSTR * pbstrLocPath ); }; [ object, uuid(00bf629c-5cb2-42c9-8e19-18a86a67b6ce), dual, helpstring("ISsrMemberAccess Interface"), pointer_default(unique) ] interface ISsrMemberAccess : IDispatch { [id(1), helpstring("method GetSupportedActions")] HRESULT GetSupportedActions ( [in] BOOL bDefault, [out, retval] VARIANT * pvarArrayActionNames ); [propget, id(2), helpstring("property Name")] HRESULT Name ( [out, retval] BSTR * pbstrName ); [propget, id(3), helpstring("property SsrMember")] HRESULT SsrMember ( [out, retval] VARIANT * pvarSSRMember ); }; [ object, uuid(f5afac44-bd77-46b1-a280-a7af9568682d), dual, helpstring("ISsrMember Interface"), pointer_default(unique) ] interface ISsrMember : IDispatch { [id(1), helpstring("method SetActionContext")] HRESULT SetActionContext ( [in] VARIANT varSsrActionData, [in] VARIANT varSsrLog, [in] VARIANT varSsrFeedback ); [propget, id(2), helpstring("property ActionCost")] HRESULT ActionCost ( [in] BSTR bstrActionVerb, [in] LONG lActionType, [in] LONG lCostFlag, [out, retval] LONG * plActionCost ); [id(3), helpstring("method DoActionVerb")] HRESULT DoActionVerb( [in] BSTR bstrActionVerb, [in] LONG lActionType, [in] LONG lFlag ); }; [ object, uuid(7c087389-66d3-4088-9495-e022c7f48d38), helpstring("ISsrFeedbackSink Interface"), pointer_default(unique) ] interface ISsrFeedbackSink : IUnknown { [id(1), helpstring("method OnNotify")] HRESULT OnNotify ( [in] LONG lFbMsg, [in] VARIANT varInfoDetail, [in, string] LPCWSTR pwszDescription ); }; [ object, uuid(4062d4e6-2f42-4ec1-8d0f-b6adf5bfbfa3), dual, helpstring("ISsrLog Interface"), pointer_default(unique) ] interface ISsrLog : IDispatch { [id(1), helpstring("method LogResult")] HRESULT LogResult ( [in] BSTR bstrSrc, [in] LONG lErrorCode, [in] LONG lErrorCodeType // WMI, COM, system ); [id(2), helpstring("method LogString")] HRESULT LogString( [in] BSTR bstrLogRecord ); [propget, id(3), helpstring("property LogFilePath")] HRESULT LogFilePath( [out, retval] BSTR * pbstrLogFilePath ); [propput, id(4), helpstring("property LogFile")] HRESULT LogFile( [in] BSTR bstrLogFile ); }; [ object, uuid(E95CF71E-2E2F-4A9F-A653-5A8D5946127E), dual, helpstring("ISCEAgent Interface"), pointer_default(unique) ] interface ISCEAgent : IDispatch { [id(1), helpstring("method Configure")] HRESULT Configure([in] BSTR bstrTemplate, [in] LONG lAreaMask, [in] BSTR bstrLogFile); [id(2), helpstring("method CreateRollbackTemplate")] HRESULT CreateRollbackTemplate([in] BSTR bstrTemplatePath, [in] BSTR bstrRollbackPath, [in] BSTR bstrLogFilePath); }; [ uuid(78726451-3f87-49eb-a2c9-8c809195a2c2), version(1.0), helpstring("SSR 1.0 Type Library") ] library SSRLib { importlib("stdole32.tlb"); importlib("stdole2.tlb"); interface ISsrActionData; interface ISsrEngine; interface ISsrMemberAccess; interface ISsrMember; interface ISsrFeedbackSink; [ uuid(fe64acb0-e0e7-4b4a-8086-923b5031bca9), helpstring("Core Class") ] coclass SsrCore { [default] interface ISsrCore; }; [ uuid(5fd4d76a-03e2-46d5-971e-9fe5b209f08e), helpstring("Log Class") ] coclass SsrLog { [default] interface ISsrLog; }; [ uuid(6906A802-45AB-4C4A-AADE-C4DF06E38FA2), helpstring("SCEAgent Class") ] coclass SCEAgent { [default] interface ISCEAgent; }; };