可以在中等信任环境中运行c++ dll

Possible to run a C++ dll in a medium trust environment?

本文关键字:运行 c++ dll 环境 信任      更新时间:2023-10-16

我有一个我一直在使用的开源c++项目的问题,当我在我的开发机器上运行它时(完全信任)它工作得很好。当我将它部署到我的托管环境时,我的站点抛出以下错误:

先。fileloadeexception: Unverifiable code failed policy check.

据我所知,这是因为我的托管环境运行在中等信任。在c++项目中是否有任何设置,我可以更改以使此dll在中等信任环境中可用?

更新:

根据@shf301的回答做了更多的调查后,我在我正在工作的项目的文档中发现了这句话:

第二个项目是针对。net开发人员的。我写了一个包装围绕这个c++项目管理c++。结果被编译成。netDLL .

这是否意味着代码应该在中等信任下运行?

c++代码是否受管理?否则它就是一个DLL,而不是一个程序集。程序集是。net的概念,它不适用于非托管DLL。

如果DLL是非托管的,或者它是托管的,并且包含本机代码,那么您不能在中等信任环境中使用它。

您的选择是更改您正在运行的信任环境或重写库,使其完全托管代码。