在Application_Start之前加载非托管DLL

时间:2014-03-12 15:50:21

标签: c# asp.net unmanaged application-start

我有一个需要使用非托管DLL文件的Web应用程序。

我正在尝试使用此related question上建议的解决方案。

我遇到的问题是在我的global.asax文件的Application_Start之前尝试加载非托管DLL,这是设置我的路径以包含非托管DLL文件的位置,因此应用程序立即崩溃

我真的想保留在我的代码中设置PATH的行为,这样我的解决方案就可以部署到新的服务器,而无需在发布我的解决方案之外的本地访问权限来设置PATH。

有没有我可以强制我的Application_Start代码在我的其他DLL文件被加载之前执行?

1 个答案:

答案 0 :(得分:1)

不要从ASP.NET应用程序中更改PATH环境变量。这可能会导致Web服务器以奇怪的方式失败。

开发人员在ASP.NET应用程序中使用非托管库的一般接受方式是将非托管.dll放入bin下面的子文件夹中,然后调用LoadLibrary,传递到模块的完整路径。