一尘不染

从Linux使用Windows DLL

linux

我们需要连接到第三方应用程序,但该应用程序背后的公司没有公开消息协议,仅提供Windows DLL进行接口。

我们的应用程序基于Linux,因此我无法直接与DLL通信。我找不到任何现有的解决方案,因此我正在考虑在Linux和Windows之间编写基于套接字的桥,但是我确信这不是一个独特的问题,有人应该做过。

您是否知道允许从Linux上的C应用程序调用Windows DDL函数的任何解决方案?它可以使用Wine或单独的Windows PC-没关系。

提前谢谢了。


阅读 1200

收藏
2020-06-02

共1个答案

一尘不染

任何解决方案都需要在运行于“类似于Windows”环境中的DLL与linux应用之间建立一个基于TCP / IP的“远程”层。

您将需要编写一个简单的PC应用程序以使用自制程序协议或XML-RPC,SOAP或JSON协议公开DLL函数。该的RemObjects
SDK
可以帮助你-但可能是矫枉过正。

我会坚持使用“真实”或虚拟PC。如果您使用Wine,则DLL开发人员不太可能提供任何支持。

MONO也不太可能有任何帮助,因为您的DLL可能不是.NET程序集。

2020-06-02