Ошибка SIPEPS, версия =5.0.0.0 UCMA 4.0 VS2010/VS2013
Я разработал приложение UCMA 4.0 на VS 2013 и VS 2010. При запуске проекта я получил эту ошибку:
Не удалось загрузить файл или сборку 'SIPEPS, версия =5.0.0.0, культура = нейтральная, PublicKeyToken=31bf3856ad364e35' или одна из ее зависимостей. Система не может найти указанный файл.
я использовал .NET
4 и установил целевую платформу сборки x64
, Проверено с зависимостью от файла xx, и файл отсутствует.
Я также использовал файл App.config из Sample, но он не работал, поэтому я изменил файл App.config следующим образом:
<runtime>
<assemblyBinding>
<dependentAssembly>
<assemblyIdentity name="SIPEPS" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.5.0.0" newVersion="5.0.0.0"/>
</dependentAssembly>
</assemblyBinding>
Как я должен сделать для этой проблемы? Большое спасибо за любую помощь!
4 ответа
Исключение может вызвать недоумение, поскольку проекты UCMA не требуют явной ссылки на эту DLL-библиотеку SIPEPS, и часто вы получите исключение, даже если вы найдете DLL -библиотеку и переместите ее в тот же каталог, что и ваше приложение.
Оказывается, это обычно вызывается одной из двух вещей:
- Вы указали не ту версию.NET Framework.
- Вы выбрали неверный тип процессора.
Откройте свойства вашего проекта в Visual Studio и убедитесь, что выбран.NET Framework 4.5.
Если вы не используете Visual Studio 2012, у вас есть несколько большая проблема,
потому что вы не можете использовать.NET 4.5 с Visual Studio 2010 и более ранними версиями. Если вы выбрали более раннюю версию фреймворка, измените его, пересоберите проект и попробуйте снова. UCMA 4.0 перечисляет.NET 4.5 как требование.
Если вы все еще получаете исключение,
проверьте целевую платформу и убедитесь, что это Любой процессор или x64 для всех проектов.
Начиная с версии 3.0 UCMA работает только на 64-разрядных компьютерах, и иногда случается, что для проекта непреднамеренно устанавливается значение x86, и поэтому он пытается загрузить 32-разрядную версию SIPEPS.dll при запуске. Ну, нет 32-битной версии SIPEPS.dll; отсюда и несколько вводящее в заблуждение исключение.
РЕДАКТИРОВАТЬ: Если вы пытаетесь установить приложение UCMA на не-Lync сервере, вы должны установить RuntimeApi, если вы пытаетесь запустить UCMA на сервере Lync/ Skype, вам не нужно устанавливать RuntimeApi, вы должны попробовать ответ выше, который должен перекомпилировать в 32/62/auto...
если перекомпиляция не сделает ваш день лучше, может быть, вы скучаете
UCMA API Runtime
Установить / переустановить
Runtime API 4.0 объединенных коммуникаций для SIPEPS версии =5.0.0.0
Среда выполнения унифицированных коммуникаций API 5.0 для SIPEPS версии = 6.0.0.0
(танцы с правильным партнером - ucma sdk 4.0/5.0 Microsoft.Rtc.Collaboration.dll)
требования к установке во время выполнения:
PS> Install-WindowsFeature server-media-foundation
на целевой / хост- машине, на которой вы хотите его запустить (что, вероятно, не связано с какой-либо территорией Lync/SKF) ИЛИ на машине для разработки с перекомпиляцией для соответствия ранжированию / обновлению
Вы также можете получить это сообщение об ошибке, если ваш сервер приложений не настроен должным образом для приложений UCMA.
В частности, это сообщение появляется, если репликация не удалась. Чтобы проверить состояние репликации, выполните get-csManagementStoreReplicationStatus
и убедитесь, что поле "UpToDate" верно для вашего сервера приложений.
В дополнение к великому ответу Тарифа. Обратите внимание, что вы должны изменить платформу на x64 в режиме отладки, а также в режиме выпуска. Платформы могут быть разными в разных режимах. У меня была такая проблема в VS2015 с UCMA4, .net4.5. В режиме отладки мое приложение работает отлично, но после сборки релиза происходит сбой с исключением "Не удалось загрузить файл или сборку SIPEPS".