2010-03-11 1 views
1

Приложение My C# использует указатели и, следовательно, выполняется с использованием параметра «Разрешить небезопасный код». Я знаю, что это довольно сложно или вообще невозможно вообще запустить такое приложение из сетевого местоположения (или есть ли способ его запускать?) Что бы я хотел знать, есть ли способ обработки ошибка, возникающая при попытке запустить это приложение из сетевого местоположения и сделать приложение неудачным изящно. Я получаю следующую ошибку ... «Приложение столкнулось с проблемой и должно быть закрыто». Информация об исключении содержит следующий код: 0xe0434f4dЗапустите приложение C#, соответствующее настройке «Разрешить небезопасный код», из сетевого местоположения

+0

Вы видите что-то в EventViewer машины, которая запускает приложение? – Ikaso

ответ

1

Изменить параметры безопасности (с помощью утилиты CASPOL), чтобы разрешить это выполнение. это не так сложно - вы можете/должны по крайней мере разместить свои локальные сети в зоне интранета;)

в противном случае - да и нет. Вы не можете получить это исключение, но вы действительно можете проверить/потребовать необходимые права CAS в коде, чтобы убедиться, что у вас есть их в первую очередь.

CAS - сложный. И мало кто знает об этом.

В качестве отправной точки необходимо указать http://support.microsoft.com/kb/315529.

+1

+1 TomTom. Вы также можете использовать параметры проекта Visual Studio для этого в VS 2008 и 2010 годах. Просто щелкните правой кнопкой мыши проект и выберите свойства. Затем перейдите на вкладку безопасности. – Ikaso

0

От .NET 3.5 sp1 затем выполняется код из сетевого ресурса gets the same rights как работает на локальной машине. Вы должны иметь возможность запускать небезопасный код, если на компьютере есть .NET 3.5 sp1.

+0

Но если это только .net 2.0 или .net 3.5 (нет SP), тогда он просто сбой при работе из сети. Единственное исправление для этого - изменить сетевые разрешения, чтобы сделать .net думать, что ЛВС является «надежным» местоположением. –