mirror of https://github.com/tongzx/nt5src
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.
60 lines
1.7 KiB
60 lines
1.7 KiB
//+---------------------------------------------------------------------------
|
|
//
|
|
// 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;
|
|
}
|
|
}
|
|
|