【发布时间】:2015-06-13 13:45:54
【问题描述】:
我知道,这经常是一个问题,但我想了解更多关于这个主题的信息。
我们有应用程序,用 C# 编写,编译为 x64。它必须编译为 x64,因为这是我们客户的要求。最近,我们发现我们有旧的 delphi 代码(sighs)和非常有用的模块,我必须测试(double sighs)。出于某种愚蠢的原因,我不能用除 delphi 7 之外的任何东西来编译这个模块。所以我坚持使用这个模块的 x32 .dll 和 x64 应用程序来使用它。
我已经发现了 IPC 通信的解决方法,但我熟悉 perl 并且最近发现了 neko。据我所知,perl 用于胶水代码,neko 用于在不同语言之间共享运行时。那么也许有一些使用 perl、neko 或其他东西的解决方法?
另外,如果您能提供任何在 neko 中在两种语言之间共享运行时的示例代码,我将不胜感激。
谢谢!
【问题讨论】:
-
如果这两个都是 Windows 环境的可执行文件,您可以尝试在旧的可执行文件周围包裹一个 COM 互操作层并将其用作进程外服务器吗?
-
这就是
IPC communications的意思,还是我错了? -
IPC 与 COM 包装器不同。我只是在考虑 Delphi 可执行文件实现任何 COM(组件对象模型)接口和/或对象的可能性,然后可以将其包装在互操作层中并暴露给进程外的 64 位应用程序
-
你在问什么?您需要两个进程和 IPC。别无选择。
-
@DavidW 我明白了,谢谢,我去看看。
标签: c# perl delphi shared-libraries neko