2014-03-24 84 views
2

我開發了一個使用asp.net C#進行在線訂單的Web應用程序。我的應用程序在SAP服務器(Windows 2008 R2)上工作正常,但是當我將我的項目複製到本地計算機(運行Windows 7)時出現錯誤,無法看到參考文獻。我的機器上沒有SAP API DI
我試圖在X86中調試我的應用程序來解決問題。但沒有運氣。 這是我enter image description hereSAPbobsCOM無法正常工作

檢索COM類工廠具有CLSID部件錯誤{632F4591-AA62-4219-8FB6-22BCF5F60090}失敗,原因是以下錯誤:80040154類未註冊(從HRESULT異常:0x80040154的(REGDB_E_CLASSNOTREG))。

謝謝

+1

您需要在此機器上安裝DI-API。當您的.Net代碼嘗試使用DI-API中定義的類型,但無法加載它(DI-API使用COM進行互操作性)時,會發生此錯誤。 – Lilshieste

+0

@Lilshieste爲什麼我們必須安裝DI-API,我在我的項目中添加了Interop.SAPbobsCOM.dll。我認爲程序使用這個DLL –

+0

@JohnNguyen安裝過程註冊DI-API與COM。 Interop.SAPbobsCOM.dll文件只是一個[互操作程序集](http://stackoverflow.com/questions/1670940/what-is-the-interop-dll),所以COM註冊仍然是必需的。 – Lilshieste

回答

0

我得到了同樣的問題。 這是因爲SAP Business One引用SAPbobsCOM和SBODI_Server丟失。我添加了這些參考,它工作。 您需要在您的機器上添加SAP API DI以使用SAPbobsCOM參考。

2

我有完全相同的問題。我的SAP組件在WCF服務中運行。

要解決該問題,應用程序池更改爲在32位下運行。

3

總結其他答案,並添加了一些有用的信息 - 你需要:

  • 第一,有SAP DI APIc:\Program Files\SAP\SAP Business One DI API\)和SAP Business One的SDKc:\Program Files (x86)\SAP\SAP Business One SDK\)安裝
  • 接下來,找出您有的版本(x86或x64)DI API。如果它安裝在c:\Program Files - 你有版本,如果它在c:\Program Files (x86)\ - 你有一個
  • 最後,去你項目屬性 - >構建選項卡並設置相同的目標平臺您的DI SDK版本爲: enter image description here