我们的软件是编写和需要连接到SAP。作为我们的一些客户使用旧版的SAP和其他人没有SAP PI,我们不能将通过web服务.

我尝试连接到SAP通过SAP Web远程功能呼叫库(sapnwrfc.dll)如下:

  • 添加sapnwrfc.dll 和其他dll NWRFC_6-20004550.SAR (正在icudt34.dll,icuin34.dll,icuuc34.dll,libicudecnumber.dll,libsapucum.dll) 要C:\WINDOWS\system32可以肯定,他们可以找到。
  • 在我的C#码添加以下类定义:
    [DllImport("sapnwrfc.dll",CharSet=CharSet。汽车)]
    公共静态的外部效RfcInit();
    和下面的方法,该方法应该做的工作:
    RfcInit();

运行这个代码给DllNotFoundException:
无法载DLL'sapnwrfc.dll':这个应用程序未启动,原因是应用程序配置是不正确的。重新安装应用程序可以解决这个问题。(异常从HRESULT:0x800736B1)

运行标准的连接-to-C++从C#例
[DllImport("user32.dll",CharSet=CharSet。Unicode)]
公共静态的外部int消息框(因此hWnd,String text String字幕,uint型);
消息框(新因此(0),"hello World!", "你好对话",0);
工作正常。

任何建议如何使这一工作的很好(让我们不需要解决这一问题通过编写一Java代理的使用公司)?

有帮助吗?

解决方案

你有没有检查与依赖的观众如果你缺少了一些DLL?我做了一旦写入一个管理的包装的rfc库(至少一部分),我记得有一个问题与一些rfc库我下载。一个版本只是没有工作,我没有弄清楚什么是错误的。另一个版本(老年)的工作只是罚款。

我没有但是有问题的unicode库(某些存储器接入问题,出现了随机)所以我不得不切换到非统版的...

如果我不得不做这样的事情再次,我要非常认真地考虑到购买连接器:http://www.theobald-software.com/en/products/erpconnect.htm

我不能说,如果它是好的,但他们似乎是在一段时间了。

其他提示

你为什么不简单地用SAP"。网连接器"(NCo3)?看到SAP注856863为一个链接到下载网页和文档。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top