【发布时间】:2010-05-10 17:20:29
【问题描述】:
我有一个必须在 64 位模式下编译和运行的项目。不幸的是,我需要调用仅在 32 位模式下可用的 DLL,因此我无法将所有内容都包含在 1 Visual Studio 项目中。我正在努力寻找将 32 位 DLL 包装在其自己的 exe/服务中并从我的 64 位应用程序远程(尽管在同一台机器上)调用该 exe/服务的最佳方法。我的操作系统是 Win7 Pro 64 位。
对这个 32 位进程所需的调用是每秒几十次,但数据量很小。这是一个实时图像分析应用程序,因此尽管容量很小,但响应时间很关键。大量发送/接收单个原语。
理想情况下,我会托管一个 WCF 服务来容纳这个 DLL,但在 64 位操作系统中,不能强制该服务以 x86 方式运行! Source。这真的很不幸,因为我对 WCF 服务的函数调用定时在我的机器上只有 4 毫秒。
我已经尝试过命名管道是.net。我发现它们比 WCF 慢 40-50 倍(我无法使用)。
对于解决我的难题的最佳方式还有其他选择或建议吗?
【问题讨论】:
-
有关从 64 位应用程序访问 32 位 DLL 的更全面的技术列表,请参阅 this answer。
标签: c# .net visual-studio-2010