我在C#中有一个动态链接库,将由其他库或应用程序加载。在加载程序集(dll)时需要调用init函数来分配/初始化资源,并且在卸载程序集之前需要调用清理函数。
我在C#中寻找类似于C ++中DllMain
函数的东西,你可以在DLL_PROCESS_ATTACH
和DLL_PROCESS_DETACH
的情况下调用函数。
提前致谢。
答案 0 :(得分:0)
这取决于您的情况。
您可以在静态构造函数中使用AppDomain.ProcessExit事件。
类似的东西:
class MyClass {
static MyClass() {
AppDomain.CurrentDomain.ProcessExit +=
MyClass_Dtor; }
static void MyClass_Dtor(object sender, EventArgs e) {
// do here some clean up
}
}
不保证会调用AppDomain.ProcessExit。
在此处查看有关AppDomain.ProcessExit的更多详细信息