ICLRRuntimeHost
更新:2007 年 11 月
提供与 .NET Framework 版本 1 中提供的 ICorRuntimeHost 接口功能类似的功能,但进行了下列更改:
增加了 SetHostControl 方法以设置宿主控件接口。
省略了 ICorRuntimeHost 提供的一些方法。
interface ICLRRuntimeHost : IUnknown {
HRESULT ExecuteApplication (
[in] LPCWSTR pwzAppFullName,
[in] DWORD dwManifestPaths,
[in] LPCWSTR *ppwzManifestPaths,
[in] DWORD dwActivationData,
[in] LPCWSTR *ppwzActivationData,
[out] int *pReturnValue
);
HRESULT ExecuteInAppDomain (
[in] DWORD appDomainId,
[in] FExecuteInDomainCallback pCallback,
[in] void* cookie
);
HRESULT ExecuteInDefaultAppDomain (
[in] LPCWSTR pwzAssemblyPath,
[in] LPCWSTR pwzTypeName,
[in] LPCWSTR pwzMethodName,
[in] LPCWSTR pwzArgument,
[out] DWORD *pReturnValue
);
HRESULT GetCLRControl (
[out] ICLRControl **pCLRControl
);
HRESULT GetCurrentAppDomainId (
[out] DWORD *pdwAppDomainId
);
HRESULT SetHostControl (
[in] IHostControl *pHostControl
);
HRESULT Start();
HRESULT Stop();
HRESULT UnloadAppDomain (
[in] DWORD dwAppDomainId
[in] BOOL fWaitUntilDone
);
};
方法
方法 |
说明 |
---|---|
在基于清单的 ClickOnce 部署方案中用于指定要在新域中激活的应用程序。 |
|
指定要在其中执行指定托管代码的 AppDomain。 |
|
调用指定程序集中属于指定类型的指定方法。 |
|
获取一个 ICLRControl 类型的接口指针,宿主可以使用该类型自定义公共语言运行库 (CLR) 的各个方面。 |
|
获取当前正在执行的 AppDomain 的数字标识符。 |
|
设置主机控制接口。在调用 Start 之前必须调用 SetHostControl。 |
|
将 CLR 初始化到进程中。 |
|
使运行库停止代码的执行。 |
|
卸载与指定的数字标识符对应的 AppDomain。 |
备注
宿主通过调用 CorBindToRuntimeEx 或 CorBindToCurrentRuntime 获取一个指向 ICLRRuntimeHost 实例的指针。若要提供 .NET Framework 2.0 版中提供的任何技术的实现,必须使用 ICLRRuntimeHost 而不是 ICorRuntimeHost。
重要说明: |
---|
在调用 ExecuteApplication 方法来激活基于清单的应用程序之前,不要调用 Start 方法。如果首先调用 Start 方法,则 ExecuteApplication 方法调用将失败。 |
要求
**平台:**请参见 .NET Framework 系统要求。
**头文件:**MSCorEE.idl
**库:**作为一项资源包含在 MSCorEE.dll 中
**.NET Framework 版本:**3.5 SP1、3.5、3.0 SP1、3.0、2.0 SP1、2.0