|
CLR(COM服务器)
CLR作为一个COM服务器实现在MSCorWks.dll文件中。安装.NET Framework时,表示CLR的COM服务器被注册到Windows的注册表里。
MSCorEE.dll(垫片)
MSCorEE.dll的职责是判断创建何种版本的CLR。 非托管应用程序宿主调用MSCorEE.dll(shim)中CorBindToRuntimeEx函数或者另一个相似的函数来创建CLR COM的实例。
一台机器可以安装多个版本的CLR,但在机器中只有一个版本的MSCorEE.dll文件。以上两者之间的关系如下代码所示(c++):MSCorEE.dll(垫片)---->CLR(COM服务器)
#include <Windows.h>#include <MSCorEE.h>
#include <stdio.h>
#pragma comment(lib,"mscoree.lib")
int main(int argc, CHAR* argv[])
{
ICLRRuntimeHost *pClrHost;
//调用<MSCorEE.h>中的CorBindToRuntimeEx()生成COM服务器
HRESULT hr= CorBindToRuntimeEx(NULL, NULL, NULL, CLSID_CLRRuntimeHost, IID_ICLRRuntimeHost, (LPVOID*)&pClrHost);
//启动clr
pClrHost->Start();
//............................其他操作
//终止clr
pClrHost->Stop();
getchar();
return 0;
}
NET技术:关于ASP.NET与CLR相互关系的一些总结,转载需保留来源!
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。