windows-nt/Source/XPSP1/NT/admin/pchealth/helpctr/service/include/slaveprocess.idl
2020-09-26 16:20:57 +08:00

175 lines
6.1 KiB
Plaintext

/******************************************************************************
Copyright (c) 1999 Microsoft Corporation
Module Name:
SlaveProcess.idl
Abstract:
This file contains the declaration of the set of coclasses and interfaces
implemented by the Help Center Service, for spawning objects under a
different user account.
Revision History:
Davide Massarenti (Dmassare) 03/28/2000
created
******************************************************************************/
//
// We should import "activscp.idl", but this way we would import the interfaces in the TLB, things like IXMLDOM* will be included...
//
// Including the couple #if/#endif, we make the MIDL happy, but don't put the declaration in the header file.
// This prevents a redeclaration error when including "activscp.h" from C++.
//
////////////////////////////////////////////////////////////////////////////////
cpp_quote( "#include <activscp.h>" )
cpp_quote( "#if 0" )
typedef
enum tagSCRIPTSTATE
{ SCRIPTSTATE_UNINITIALIZED = 0,
SCRIPTSTATE_INITIALIZED = 5,
SCRIPTSTATE_STARTED = 1,
SCRIPTSTATE_CONNECTED = 2,
SCRIPTSTATE_DISCONNECTED = 3,
SCRIPTSTATE_CLOSED = 4
} SCRIPTSTATE;
/* script thread state values */
typedef
enum tagSCRIPTTHREADSTATE
{ SCRIPTTHREADSTATE_NOTINSCRIPT = 0,
SCRIPTTHREADSTATE_RUNNING = 1
} SCRIPTTHREADSTATE;
/* Thread IDs */
typedef DWORD SCRIPTTHREADID;
cpp_quote( "#endif" )
////////////////////////////////////////////////////////////////////////////////
[
object,
uuid(833E4280-AFF7-4AC3-AAC2-9F24C1457BCE),
dual,
oleautomation,
helpstring("IPCHSlaveProcess Interface"),
pointer_default(unique)
]
interface IPCHSlaveProcess : IDispatch
{
HRESULT Initialize( [in] BSTR bstrVendorID, [in] BSTR bstrPublicKey );
HRESULT CreateInstance( [in] REFCLSID rclsid, [in] IUnknown* pUnkOuter, [out] IUnknown* *ppvObject );
HRESULT CreateScriptWrapper( [in] REFCLSID rclsid, [in] BSTR bstrCode, [in] BSTR bstrURL, [out] IUnknown* *ppvObject );
HRESULT OpenBlockingStream( [in] BSTR bstrURL, [out] IUnknown* *ppvObject );
HRESULT IsNetworkAlive( [out] VARIANT_BOOL* pfRetVal );
HRESULT IsDestinationReachable( [in] BSTR bstrDestination, [out] VARIANT_BOOL *pfRetVal );
};
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
[
object,
uuid(833E4281-AFF7-4AC3-AAC2-9F24C1457BCE),
dual,
oleautomation,
helpstring("IPCHActiveScript Interface"),
pointer_default(unique)
]
interface IPCHActiveScript : IDispatch
{
HRESULT Remote_SetScriptSite( [in] IPCHActiveScriptSite* pass );
HRESULT Remote_SetScriptState( [in] SCRIPTSTATE ss );
HRESULT Remote_GetScriptState( [out] SCRIPTSTATE *pss );
HRESULT Remote_Close();
HRESULT Remote_AddNamedItem( [in] BSTR pstrName ,
[in] DWORD dwFlags );
HRESULT Remote_AddTypeLib( [in] BSTR bstrTypeLib ,
[in] DWORD dwMajor ,
[in] DWORD dwMinor ,
[in] DWORD dwFlags );
HRESULT Remote_GetScriptDispatch( [in] BSTR pstrItemName ,
[out] IDispatch* *ppdisp );
HRESULT Remote_GetCurrentScriptThreadID( [out] SCRIPTTHREADID *pstidThread );
HRESULT Remote_GetScriptThreadID( [in] DWORD dwWin32ThreadId ,
[out] SCRIPTTHREADID *pstidThread );
HRESULT Remote_GetScriptThreadState( [in] SCRIPTTHREADID stidThread ,
[out] SCRIPTTHREADSTATE *pstsState );
HRESULT Remote_InterruptScriptThread( [in] SCRIPTTHREADID stidThread ,
[in] DWORD dwFlags );
HRESULT Remote_InitNew();
HRESULT Remote_AddScriptlet( [in] BSTR bstrDefaultName ,
[in] BSTR bstrCode ,
[in] BSTR bstrItemName ,
[in] BSTR bstrSubItemName ,
[in] BSTR bstrEventName ,
[in] BSTR bstrDelimiter ,
[in] DWORD_PTR dwSourceContextCookie ,
[in] ULONG ulStartingLineNumber ,
[in] DWORD dwFlags ,
[out] BSTR *pbstrName );
HRESULT Remote_ParseScriptText( [in] BSTR bstrCode ,
[in] BSTR bstrItemName ,
[in] IUnknown *punkContext ,
[in] BSTR bstrDelimiter ,
[in] DWORD_PTR dwSourceContextCookie ,
[in] ULONG ulStartingLineNumber ,
[in] DWORD dwFlags ,
[out] VARIANT *pvarResult );
};
[
object,
uuid(833E4282-AFF7-4AC3-AAC2-9F24C1457BCE),
dual,
oleautomation,
helpstring("IPCHActiveScriptSite Interface"),
pointer_default(unique)
]
interface IPCHActiveScriptSite : IDispatch
{
HRESULT Remote_GetLCID( [out] BSTR *plcid );
HRESULT Remote_GetItemInfo( [in] BSTR bstrName ,
[in] DWORD dwReturnMask,
[out] IUnknown **ppiunkItem ,
[out] ITypeInfo **ppti );
HRESULT Remote_GetDocVersionString( [out] BSTR *pbstrVersion );
HRESULT Remote_OnScriptTerminate( [in] VARIANT* varResult );
HRESULT Remote_OnStateChange( [in] SCRIPTSTATE ssScriptState );
HRESULT Remote_OnScriptError( [in] IUnknown* pscripterror );
HRESULT Remote_OnEnterScript();
HRESULT Remote_OnLeaveScript();
};