有没有人知道如何使用Erlang与COM对象进行交互?我找到了允许它的彗星库,但看起来这个代码不再存在于OTP包中。
我考虑用另一种语言(如C ++或C#)编写代码,并通过端口与Erlang通信,但不确定这种方法是否最方便。
答案 0 :(得分:3)
是的,erl_com
(comet
)是not supported since R9B。
Comet,Erlang的COM客户端(REMOVED)
Comet应用程序已从产品中删除,因为我们目前 没有资源来维护它。我们计划将其提供给 开源网站。它仍适用于Windows NT 4,但有 Windows XP上的问题。
我们现在有18.3(旧版本格式的R18B03)。它使用linked_in driver进行通信。这是与外部代码进行通信的一种非常有效的方式,但dangerous。
警告
错误的链接驱动程序会导致整个Erlang运行时系统泄漏内存,挂起或崩溃。
有关详细信息,请参阅Interoperability Tutorial User's Guide。主要有四种选择:
如果可靠性存在于您的担忧中,则端口和C / Java节点是首选方式。当性能最重要时,NIF是首选。链接驱动程序是传统的,特别适用于NIF API不够强大的用途。
当然,您可以使用Standard Protocols与服务器进行通信。