当从本地控制台应用程序从C ++ / CLI DLL调用C#库时,未能授予最小权限请求

问题描述 投票:4回答:2

此问题接自Assembly does not allow partially trusted callers when using a custom resolver

由于有了这个问题的解决方案,我现在能够从本地控制台应用程序调用网络共享上的C#库(无需更改CasPol)

我现在需要执行下一步,即从另一个与C#库位于网络相同文件夹中的混合C ++ / CLI DLL调用C#库。 C ++ / CLI DLL将由本地控制台应用程序调用。

我正在使用与上述问题相同的自定义处理程序(即有证据),该自定义处理程序在从本地控制台应用程序调用C#库时有效。

当从本地控制台应用程序调用C ++ / CLI库时,出现以下异常:

无法加载文件或程序集'MyCplusplusCLILib,版本= 0.0.0.0,文化=中性,PublicKeyToken =空”或其依赖项之一。无法授予最低权限请求。 (来自HRESULT的异常:0x80131417)

如果我完全信任该网络位置,则它可以正常工作,但是我不明白为什么要根据3.5 SP1中的更改​​来授予此信任,因为Intranet不再需要对其应用FullTrust(所有库都是针对编译的。 NET 3.5(在Visual Studio选项中)

c# .net c++-cli
2个回答
6
投票


0
投票
这是一个安全/信任问题。在Windows资源管理器中打开DLL的属性。它可能被标记为已阻止,因为它是从Internet下载的。转到属性并单击“取消阻止”按钮,即可解决问题。
© www.soinside.com 2019 - 2024. All rights reserved.