Ошибка 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. Проверено dependwalker_x64, и все файлы отсутствуют.

Я также использовал файл App.config из примера, но он не работает, поэтому я изменил файл 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>

How should I do for this problem? Thanks so much for any help!


person Mr Neo    schedule 27.07.2015    source источник


Ответы (4)


Исключение может сбивать с толку, поскольку проекты UCMA не требуют явной ссылки на эту SIPEPS DLL, и часто вы получите исключение, даже если найдете 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 для всех проектов.

UCMA работает только на 64-битных машинах, начиная с версии 3.0, и иногда случается так, что проект непреднамеренно устанавливается на x86 и поэтому пытается загрузить 32-битную версию SIPEPS. dll при запуске. Что ж, 32-разрядной версии SIPEPS.dll не существует; отсюда несколько вводящее в заблуждение исключение.

Справочник

person Tharif    schedule 27.07.2015
comment
Большое спасибо, я попробую еще раз. - person Mr Neo; 28.07.2015
comment
На самом деле мне пришлось явно указать целевую платформу x64, чтобы это работало (в UCMA 5.0). AnyCPU было недостаточно. - person Tsahi Asher; 19.12.2016

РЕДАКТИРОВАТЬ: если вы пытаетесь установить приложение UCMA на сервере, отличном от lync, вы должны установить RuntimeApi, если вы пытаетесь запустить UCMA на сервере lync/skype, вам не нужно устанавливать RuntimeApi, вы должны попробовать приведенный выше ответ, который должен перекомпилировать в 32/62/авто...

если повторная компиляция не делает ваш день лучше, возможно, вам не хватает
UCMA API Runtime

Установить/Переустановить
Среда выполнения Unified Communications Managed API 4.0 для SIPEPS Version=5.0.0.0
Среда выполнения Unified Communications Managed 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) ИЛИ на компьютере разработки с повторной компиляцией для соответствия более ранней версии /Обновить

person Zakos    schedule 15.02.2016

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

В частности, это сообщение появляется при сбое репликации. Чтобы просмотреть состояние репликации, запустите get-csManagementStoreReplicationStatus и убедитесь, что поле «UpToDate» верно для вашего сервера приложений.

person Paul Hodgson    schedule 28.07.2015

В дополнение к отличному ответу tharif. Обратите внимание, что вы должны изменить платформу на x64 в режиме отладки, а также в режиме выпуска. Платформы могут быть разными в разных режимах. У меня была такая проблема в VS2015 с UCMA4, .net4.5. В режиме отладки мое приложение отлично работает, но после сборки релиза происходит сбой с исключением «Не удалось загрузить файл или сборку SIPEPS».

person KozhevnikovDmitry    schedule 10.08.2017