2017-02-08 4 views
1

Я вижу, что у некоторых из них есть те же проблемы, что и у меня, но я не нашел решение проблемы, которое исправляет его для меня.Невозможно загрузить DLL «Microsoft.WITDataSTore32.dll»

Это работает на моем Dev-машине, но не в производстве:

WorkItemStore workItemStore = teamProjectCollection.GetService<WorkItemStore>(); 

Вот мое сообщение об ошибке:

Unable to load DLL 'Microsoft.WITDataStore32.dll': Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)) 

Я скопировал файл в мой бен папку, но она до сих пор не work.Could это может быть что-нибудь с IIS-процессом-пользователем, не имеющим доступа к файлу? Когда начать?

Кто-нибудь испытал то же самое?

С уважением.

ответ

1

Чтобы сузить, если проблема, связанная с IIS-процессом, не имеет доступа к файлу.

Вы можете проверить разрешения на dll. Убедитесь, что Сетевая служба и идентификатор пула приложений у обоих был чтение/запись/выполнение разрешений. Добавьте IIS_IUSRS, IIS-процесс-пользователи с r/w/x.

Пожалуйста, попробуйте запустить cmd tasklist /m dll_name.dll, чтобы проверить, заблокирован ли другой процесс, и не имеет доступа к открытому доступу.

В другом направлении двойная проверка, если ссылка на Microsoft.WITDataStore успешна. Если вы используете пакет Nuget для установки DLL, убедитесь, что используете official NuGet packages. Некоторые Похожий вопрос об этом для справки:

+1

Идентификатор пула приложений потерял свои права на папку bin. Установка правильного доступа для идентификации решила мою проблему. Благодаря! –

1

Вы должны использовать пакет NuGet для TFS интеграции. Если вы добавите расширенный клиент TFS, он настроит файлы соответствующим образом.

https://www.nuget.org/packages/Microsoft.TeamFoundationServer.ExtendedClient

Он добавляет два дополнительных файла в проект, что вам нужно.

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