簡體   English   中英

錯誤SIPEPS,版本= 5.0.0.0 UCMA 4.0 VS2010 / VS2013

[英]Error SIPEPS, Version=5.0.0.0 UCMA 4.0 VS2010/VS2013

我在VS 2013和VS 2010上都開發了一個UCMA 4.0應用程序。運行項目時,我收到了這個錯誤:

無法加載文件或程序集'SIPEPS,Version = 5.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其依賴項之一。 該系統找不到指定的文件。

我使用.NET 4並將目標構建平台設置為x64 dependwalker_x64檢查,沒有文件丟失。

我還使用了Sample中的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>

我該怎么做這個問題? 非常感謝您的幫助!

異常可能非常令人困惑,因為UCMA項目不需要顯式引用此SIPEPS DLL ,即使您找到DLL並將其移動到與應用程序相同的目錄中,通常也會獲得異常。

事實證明,這通常是由兩件事之一引起的:

  1. 您已針對錯誤版本的.NET Framework。
  2. 您已針對錯誤類型的CPU。

在Visual Studio中打開項目的屬性,並確保選中.NET Framework 4.5。

如果您沒有運行Visual Studio 2012,則會出現更大的問題,

因為您無法在Visual Studio 2010及更早版本中使用.NET 4.5。 如果您選擇了早期版本的框架,請更改它,重建項目,然后重試。 UCMA 4.0列出了.NET 4.5作為要求。

如果你仍然得到例外,

檢查目標平台並確保所有項目都是任何CPUx64

自3.0版以來, UCMA僅在64位計算機上運行,​​有時會發生一個項目無意中設置為x86,因此會嘗試在啟動時加載32位版本的SIPEPS.dll。 好吧,沒有32位版本的SIPEPS.dll; 因此有點誤導性的例外。

參考

編輯:如果你嘗試在非lync服務器上安裝UCMA applitaion,你必須安裝RuntimeApi,如果你試圖在lync / skype服務器上運行UCMA,你不需要安裝RuntimeApi,你應該嘗試上面的答案,這是重新編譯為32/62 / auto ...

如果重新編譯不會讓你的一天變得更好,也許你會失蹤
UCMA API運行時

安裝/重新安裝
SIPEPS版本= 5.0.0.0的統一通信托管API 4.0運行時
適用於SIPEPS版本= 6.0.0.0的統一通信托管API 5.0運行時

(與合適的合作伙伴共舞 - ucma sdk 4.0 / 5.0 Microsoft.Rtc.Collaboration.dll)

運行時安裝要求:

PS> Install-WindowsFeature服務器 - 媒體 - 基礎

在您希望運行它的目標/主機上(可能與任何Lync / SKF區域無關)或在開發計算機上進行重新編譯以適應降級/升級

如果沒有為UCMA應用程序正確配置應用程序服務器,也可能會收到此錯誤消息。

特別是如果復制失敗,則會顯示此消息。 要查看復制狀態,請運行get-csManagementStoreReplicationStatus並確保應用程序服務器的“UpToDate”字段為true。

除了tharif的偉大答案。 請注意,您必須在調試模式和發布模式下將平台更改為x64。 平台在不同模式下可以有所不同。 我在VS2015中遇到過UCMA4,.net4.5這樣的問題。 在調試模式下,我的應用程序運行良好,但在發布后,它會失敗,但“無法加載文件或程序集SIPEPS”除外。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM