Когда я пытаюсь запустить сборку .NET (boo.exe
) из общего сетевого ресурса (сопоставленного с диском), происходит сбой, так как ему доверяют только частично:
Unhandled Exception: System.Security.SecurityException: That assembly does not allow partially trusted callers.
at System.Security.CodeAccessSecurityEngine.ThrowSecurityException(Assembly asm, PermissionSet granted, PermissionSet refused, RuntimeMethodHandle rmh, SecurityAction action, Object demand, IPermission permThatFailed)
at BooCommandLine..ctor()
at Program..ctor()
at ProgramModule.Main(String[] argv)
The action that failed was:
LinkDemand
The assembly or AppDomain that failed was:
boo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=32c39770e9a21a67
The Zone of the assembly that failed was:
Intranet
The Url of the assembly that failed was:
file:///H:/boo-svn/bin/boo.exe
Руководствуясь сообщением в блоге , я добавил политику в .NET Configuration, полностью доверяя всем сборкам с file:///H:/*
в качестве их URL. Я проверил это, введя URL file:///H:/boo-svn/bin/boo.exe
в инструмент Evaluate Assembly в конфигурации .NET и отметив, что boo.exe имеет разрешение Unrestricted (которого раньше не было). полис).
Даже с разрешения boo.exe
не запускается. Я все еще получаю то же сообщение об ошибке.
Что я могу сделать для устранения этой проблемы? Есть ли другой способ запуска «частично доверенных» сборок из общих сетевых ресурсов без необходимости что-либо менять для каждой сборки, которую я хочу запустить?