2009-04-30 2 views
17

Possible Duplicate:
Could not load file or assembly or one of its dependencies. Access is deniedНе удалось загрузить файл или сборку «someProject» или одну из его зависимостей. Доступ запрещен

Я застрял в одной ошибке asp.net. Мое приложение отлично работает в области разработки и тестирования. Но на производстве это дает мне следующую погрешность:

Could not load file or assembly 'someProject' or one of its dependencies. Access is denied.

ответ

13

Просто удалите папку с bin, а затем скопируйте ее. Теперь он работает ...

+2

Это может помочь небольшому проценту населения: http://stackoverflow.com/a/19309555/1464716 – fionbio

1

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

+1

Что вы подразумеваете под пользователем сервера? –

+0

Пользовательский контекст, на котором работает приложение asp.net. –

+0

это фактически интегрированный вариант безопасности. когда пользователь попадает на сайт. он попросит домен \ имя пользователя и пароль ... –

0

Звучит как неправильно настроенный сервер.

Прежде всего убедитесь, что сборка действительно существует.

Во-вторых, убедитесь, что у вашей учетной записи рабочего процесса есть доступ к ней.

+0

Я думаю, что он существует, я развернул его. все dll находятся в папках bin. –

+1

Это только половина. Вы должны убедиться, что рабочий процесс имеет к нему доступ. В принципе, начните выполнять настройки IIS и сравните свою производственную коробку с промежуточным блоком. – NotMe

15

Перейти к Sysinternals и загрузить Process Monitor: http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx

Затем запустите его, фильтровальную нить и действия реестра прочь. Очистить содержимое. Запустите приложение и получите сообщение об ошибке, а затем остановите сборку на мониторе процесса. Теперь найдите статус ACCESS DENIED, и вы сможете увидеть точный файл, вызывающий проблемы, а также учетную запись пользователя, пытающуюся получить доступ.

+0

У меня возникла проблема с доступом к доступу, и это позволило мне найти проблему как событие «PATH NOT FOUND», нацеленное на мою библиотеку в «C: \ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Temporary Файлы ASP.NET \ root \ 8ef518fa \ 1fb2943c \ Backend \ Backend.dll', поэтому я использовал этот метод: http: // stackoverflow.com/questions/809144/can-not-load-file-or-assembly-someproject-or-one-of-its-dependencies-access # answer-7823546 – knocte

+0

Моей проблемой был доступ к папкам: C: \ Users \ {{ username}} \ AppData \ Local \ Temp \ Временные файлы ASP.NET Procmon очень помог мне .. Большое спасибо! – ArjaaAine

3

Дайте полные права доступа к запущенному пользователя или группы пользователей (как группа MACHINE \ пользователей или домен \ Пользователи домена) в

C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files

Используйте цель .net номер версии вместо v4.0.30319, если он отличается от .net 4.0.

+0

Выполнение этого просто не помогло мне, мне нужно было установить разрешения, а затем удалить все папки под «Временным ASP» .NET Files', и тогда это сработало – knocte

1

После развертывания нового проекта Web API для нашего веб-фермы, один из наших веб-серверов была неисправна и дает ошибку:

Could not load file or assembly 'Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. Access is denied.

Оказывается папку хостинг сайта Web API не хватало разрешения для IIS_IUSRS. Добавление пользователя с Read, Read & execute и List folder contents разрешениями исправили проблему.

+0

Это исправило это для меня, спасибо. –

0

В моем случае путем изменения удостоверения пула приложений из ApplicationPoolIdentity в услуга сети она работает.

 Смежные вопросы

  • Нет связанных вопросов^_^