C# SAPBOBBSCOM不工作
我使用asp.net C#开发了一个web应用程序来在线下订单。我的应用程序。在SAP server(windows 2008 R2)上工作正常,但当我将项目复制到本地计算机(运行windows 7)时,出现错误,无法查看sapbobcom参考。我的机器上没有SAP API DIC# SAPBOBBSCOM不工作,c#,.net,iis,com,sap,C#,.net,Iis,Com,Sap,我使用asp.net C#开发了一个web应用程序来在线下订单。我的应用程序。在SAP server(windows 2008 R2)上工作正常,但当我将项目复制到本地计算机(运行windows 7)时,出现错误,无法查看sapbobcom参考。我的机器上没有SAP API DI 我试图用X86调试我的应用程序来解决这个问题。但是没有运气。 这就是我犯的错误 检索CLSID为{632F4591-AA62-4219-8FB6-22BCF5F60090}的组件的COM类工厂失败,原因是以下错误:80
我试图用X86调试我的应用程序来解决这个问题。但是没有运气。 这就是我犯的错误 检索CLSID为{632F4591-AA62-4219-8FB6-22BCF5F60090}的组件的COM类工厂失败,原因是以下错误:80040154类未注册(HRESULT的异常:0x80040154(REGDB_E_CLASSNOTREG))。
谢谢我也遇到了同样的问题。 这是因为SAP Business One引用的SAPbobsCOM和SBODI_服务器缺失。我添加了这些参考资料,效果很好。
您需要在您的计算机上添加SAP DI API以使用SAPBOBBSCOM引用。我遇到了完全相同的问题。我的SAP组件在WCF服务中运行
为了解决此问题,将应用程序池更改为在32位下运行 该问题是由于为应用程序选择了
任何CPU
平台目标而导致的
这意味着您的应用程序可以同时作为32x
和x64
进程运行,具体取决于执行应用程序的.NET运行时比特数。如果您的进程以x64
运行,并且安装了32x
DI API(反之亦然),则会出现此问题,因为DI API需要将本机DLL加载到进程中。但是,32x
dll无法加载到x64
进程中,反之亦然
这就是为什么我们必须明确允许您的应用程序使用与它将使用的DI API位完全相同的位
为此:
- 首先,安装SAPDI API(
)和SAPBusiness One SDK(c:\Program Files\SAP\SAP Business One DI API\
)c:\Program Files(x86)\SAP\SAP Business One SDK\
- 接下来,找出您拥有的DI API的哪个版本(x86或x64)。如果它安装在
-您有x64版本,如果它安装在c:\Program Files
-您有x86版本c:\Program Files(x86)\
- 最后,转到您的项目属性->构建选项卡,设置与DI SDK版本相同的平台目标:
Interop.SAPbobsCOM.dll
文件只是一个文件,所以COM注册仍然是必需的。@Lilshieste谢谢,但是在我重新安装DI-API之后,我仍然会遇到这个错误。在C#中,由代码引起的错误:sapbobbscom.Company vcmp=new sapbobbscom.Company()
您能帮忙吗me@Sam,您是否介意查看我的,看看是否可以将其标记为已被接受的,以供更多读者阅读?在花了相当长的时间寻找解决此问题的方法后,将平台目标从x86更改为x64最终解决了这一问题。我最初将它从任何CPU改为x86,但从未尝试过x64选项。谢谢