使用C++编写Win32的DLL时,利用DllMain函数可以实现在Dll被加载到进程或者线程,以及被进程或者线程卸载的时候执行某些操作。
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
//做我想做的事情
break;
case DLL_THREAD_ATTACH:
//做我想做的事情
break;
case DLL_THREAD_DETACH:
//做我想做的事情
break;
case DLL_PROCESS_DETACH:
//做我想做的事情
break;
}
那么想在C#写的Dll中获得相同的效果,该如何实现?
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
//做我想做的事情
break;
case DLL_THREAD_ATTACH:
//做我想做的事情
break;
case DLL_THREAD_DETACH:
//做我想做的事情
break;
case DLL_PROCESS_DETACH:
//做我想做的事情
break;
}
那么想在C#写的Dll中获得相同的效果,该如何实现?
你可以编写一个类及其方法,然后在整个程序入口处调该DLL的这个类的方法,这样就相当于这个DLL的入口方法了。
结贴~