//+--------------------------------------------------------------------------- // // Microsoft Windows // Copyright (C) Microsoft Corporation, 1992 - 1995 // // File: scrproc.idl // // Contents: Defines interfaces used to talk to the script engine by remote // processes. // //---------------------------------------------------------------------------- import "oleidl.idl"; // ************* Scripted Process Interfaces ***************** interface IScriptedProcessSink; [object, uuid(854c3171-c854-4a77-b189-606859e4391b)] interface IScriptedProcess : IUnknown { // This interface needs to be easy to use from C++ HRESULT SetProcessID([in] long lProcessID, [in, string] wchar_t *pszEnvID); // Fires an OnProcessEvent event to the script engine HRESULT SendData([in, string] wchar_t * pszType, [in, string] wchar_t * pszData, [out] long *plReturn); HRESULT SetExitCode([in] long lExitCode); // This removes the requirement for the process to support IConnectionPointContainer HRESULT SetProcessSink([in] IScriptedProcessSink * pSPS); } [object, uuid(854c3172-c854-4a77-b189-606859e4391b)] interface IScriptedProcessSink : IUnknown { // This interface needs to be easy to use from C++ HRESULT RequestExit(); HRESULT ReceiveData([in, string] wchar_t *pszType, [in, string] wchar_t *pszData, [out] long *plReturn); } [uuid(854c3173-c854-4a77-b189-606859e4391b)] library MTScriptedProcessLib { [uuid(854c316f-c854-4a77-b189-606859e4391b)] coclass LocalScriptedProcess { [default] interface IScriptedProcess; [default, source] interface IScriptedProcessSink; } }