Ошибка 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 -библиотеку и переместите ее в тот же каталог, что и ваше приложение.

Оказывается, это обычно вызывается одной из двух вещей:

  1. Вы указали не ту версию.NET Framework.
  2. Вы выбрали неверный тип процессора.

Откройте свойства вашего проекта в 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".

Другие вопросы по тегам