Предупреждение о безопасности VS 2010 при открытии моих собственных проектов

20

Всякий раз, когда я пытаюсь открыть свои собственные проекты в VS 2010 Express, я получаю следующее сообщение:

Вы должны открывать проекты только из надежного источника

Я могу нажать кнопку ОК на сообщении и открыть решение, но я бы предпочел не получать предупреждения каждый раз, когда открываю свое решение.

Файлы не были загружены из Интернета; они сидят прямо на сетевом диске моего отдела . Там нет ничего, чтобы разблокировать, если я смотрю в окне свойств для файла проекта.

Любые советы по устранению этой ошибки будут оценены.

Зиан Чой
источник
Вы пытались установить свою долю на fulltrust или нет?
Мартейн Б

Ответы:

14

Существует некоторая проблема с Visual Studio 2010. Проверьте это для более подробной информации на веб-сайте Microsoft. Список проблем Доверяйте сетевым ресурсам в Visual Studio 2010 / .NET 4.0 .

Это будет вызвано не только выходом из Интернета (что позволит вам ударить Unblock), но также и в некоторых других случаях, как, я думаю, в сетевой папке, в каталоге temp или downloads. Я не знаю, как отключить это оптом, я боюсь. Вы должны быть в состоянии сделать это сTools>Options>Projects and Solutions>Warn user when project location is not trusted

Чтобы избежать сообщения, вы можете либо

(1) просто согласиться на загрузку; это должно подавить сообщение о том, что каждый раз, когда вы открываете проект как часть этого решения для одного и того же пользователя на одном компьютере;

или

(2) перейдите в проводник Windows, щелкните правой кнопкой мыши файл проекта, выберите «Свойства», посмотрите в нижней части вкладки «Общие», если есть кнопка «Разблокировать», нажмите эту кнопку. Возможно, вам придется сделать это для любого файла .user рядом с проектом.

Ниранджан Сингх
источник
Даунвотер хочет прокомментировать ??????? /
Ниранджан Сингх
Файлы не были загружены из Интернета; они сидят прямо на сетевом диске моего отдела. в чем смысл этого заявления ... ссылка в моем ответе объясняет все причины этой ошибки .. Если кто-то, кто проголосовал, может пролить свет на эту проблему и нашу ошибку ..
Ниранджан Сингх
Ваше решение либо (для одного) не является реальным, либо для двух, что если нет разблокировки?
Soandos
3

Есть 2 простых способа сделать это:

Как разрешить запуск моих проектов Visual Studio .NET из сетевого расположения?

Чтобы предоставить разрешение всем своим проектам в папке «Проекты Visual Studio», расположенной в сети, выполните следующие 8 шагов:

  • Откройте конфигурацию Microsoft .NET Framework 1.1, которую вы найдете в разделе «Администрирование» на панели управления.
  • Разверните Политику безопасности во время выполнения | Машина, | Код группы | All_Code | LocalIntranet_Zone
  • На правой панели щелкните Добавить группу дочерних кодов.
  • В следующем диалоговом окне выберите «Создать новую группу кода» и введите имя, например «Проекты Visual Studio».
  • При необходимости предоставьте описание для группы кодов. (Вы увидите описание, когда щелкнете по группе кодов в левом дереве, помогая определить различные группы кодов, которые могут у вас быть).
  • В раскрывающемся списке Тип условия выберите URL
  • В поле URL введите что-то вроде этого:

    file://YourServer/My Documents/Visual Studio Projects/*
    

В разделе Использовать существующий набор разрешений выберите FullTrust (то есть, если вы доверяете собственным приложениям. Если нет, выберите другой набор разрешений или создайте новый).


Как: предоставить разрешения для папок и сборок

Майкл
источник
Это будет работать для версии Visual Studio до 2010 года, но не решит проблему для VS 2010. У меня настроено сетевое расположение как доверенное, и я могу запускать приложения CLR 2.0 из сети.
тяжело
1

Единственное решение этой проблемы, о котором сообщают, кажется, состоит в том, чтобы сопоставить сетевой ресурс как локальный диск.

Однако этого недостаточно, как указано в пользовательских сопоставлениях пространства имен WPF, которые не выполняются в Visual Studio 2010 :

Прежде всего, проблема заключается в том, что проект не находится на локальном диске, что создает некоторые проблемы в среде Visual Studio.

Решить проблему:

  1. Убедитесь, что проект открыт с использованием подключенного диска (например P:/Projects/.../mySolution.sln). Будьте осторожны, это означает, что отображение диска недостаточно; Вы должны открыть его из сопоставленного пути (из окон проводника, используя подключенный диск). Если вы продолжите загружать его, используя меню «недавние проекты» в VS, путь все равно будет абсолютным.

  2. Измените вызываемый файл конфигурации среды разработки devenv.exe.configи добавьте его <loadFromRemoteSources enabled="true" /> в раздел configuration/runtime. Этот файл находится на диске, на котором установлен VS.

[РЕДАКТИРОВАТЬ]

Поскольку вы говорите, что этот ответ не относится к вашей проблеме, и поскольку это единственная проблема, для которой доступно решение, я предлагаю вам сообщить Microsoft о вашей проблеме.

Я думаю, что это поведение встроено в VS 2010, поэтому решение проблемы может решить только само исправление продукта.

В любом случае, все, что вам нужно сделать, это принять каждый проект один раз, чтобы навсегда избавиться от сообщения об этом проекте на этом компьютере.

harrymc
источник
По крайней мере, в моем случае я загружаю решение с подключенного диска, и я изменил файл конфигурации, и я все еще получаю ошибку. Вопрос переполнения стека, на который вы ссылаетесь, описывает отдельную проблему. Этот ответ решает невозможность загрузки сборок из общей сетевой папки, а не сообщение об ошибке в исходном вопросе.
тяжело
Вы пытались загрузить проект из Проводника, дважды щелкнув файл .sln? Это сработало в цитируемом вопросе.
harrymc
Да, и, как я уже сказал, цитируемый вопрос решает другую проблему.
тяжелый
Добавлена ​​правка. Наверное, не то, что вы хотите услышать.
Harrymc
Боюсь, ваши правки могут быть верными, за исключением последнего предложения. Его не принимают один раз, а потом его нет, его каждый раз, когда я открываю решение! В противном случае это было бы не так важно.
тяжелый день
1

Windows устанавливает зоны и решает, какие файлы блокировать на основе зон безопасности. Вы должны проверить там сначала.

Вероятно, поэтому приведенные выше ответы не помогут вам. Файлы на вашем компьютере попадают в зону локального компьютера . Те из нас, кто использовал IE 4 и 5, вероятно, помнят этот параметр. Начиная с IE 6 и XP зона локального компьютера была заблокирована и исчезла с вкладки «Безопасность». Есть несколько способов, которыми Windows обнаруживает, если файл был создан за пределами зоны локального компьютера. Один из способов частично показан выше, с кнопкой разблокировки. Файлы, загруженные из более строгой зоны, помечаются.

Зайдите в Internet Explorer или Панель управления и перейдите в Свойства обозревателя. В разделе «Свойства обозревателя» щелкните зону « Интранет» . На нем уже должна быть включена опция автоматического определения внутренней сети . Теперь нажмите « Пользовательский уровень», найдите «Разное» и найдите « Запустить приложения» и «Небезопасные файлы» .

Убедитесь, что он включен . Если вы зайдете в зону Интернета и сделаете то же самое, она попадет туда, где вы не получите подсказок при запуске загруженных файлов. Windows помечает файлы, загруженные из Интернета, используя альтернативный поток данных. Файлы из других зон просто перехватываются, и вы получаете подсказки.

Другой способ Windows обнаруживает файлы из других зон по URL или сетевому протоколу. Если вы отключите настройки интрасети и DNS-сервер направит URL-адрес обратно на веб-сервер, расположенный на вашем локальном компьютере, Windows может выдать вам то же предупреждение.

UNC-пути включены в Интранет. http://technet.microsoft.com/en-us/library/cc817500.aspx

Это список настроек зоны. http://technet.microsoft.com/en-us/library/cc961173.aspx

Подробнее о Mark of the Web: Это, пожалуй, лучший пост в блоге о Mark of the Web и зонах интернет-безопасности .

Это тоже хороший пост в блоге. Тем более, что он концентрируется не на том, чтобы заглушить или избавиться от предупреждений, а скорее говорит о том, почему предупреждения появляются в первую очередь. Это не как, а скорее почему.

surfasb
источник
-1

Во-первых, это не ошибка. Эта функция предназначена для того, чтобы спасти более легковерных пользователей, которые могут просто открыть что-то из ненадежного источника. Локальный сетевой диск находится в той же зоне безопасности (или аналогичной), что и во всемирной паутине.

Чтобы ответить на ваш вопрос, вот учебник о том, как избавиться от надоедливого сообщения шаг за шагом со скриншотами.

Исправить это довольно просто, просто выберите файл проекта в проводнике Windows, щелкните правой кнопкой мыши, откройте свойства файлов и нажмите кнопку «Разблокировать», чтобы сообщить Windows и Visual Studio, что вы доверяете файлу.

введите описание изображения здесь

Daisetsu
источник
> Файлы не были загружены из Интернета ... Там нет ничего, чтобы разблокировать, если я смотрю в окне Свойства для файла проекта.
Зиан Чой
Если нет возможности разблокировать, вы не должны видеть это сообщение. Сообщение появляется из других файлов, которые вы создаете на своем локальном компьютере?
Daisetsu
Да. <наполнитель спам-фильтра ... ответ на жизнь 42 ...>
Zian Choy
Я только что нашел кого-то с точно такой же проблемой. social.msdn.microsoft.com/Forums/en/vssetup/thread/… Кажется, что если вы работаете от имени администратора, это решает проблему. Дайте это попробовать.
Daisetsu