我需要在C ++项目中使用我的一个VB.NET项目。两者之间的接口将用于C ++代码实例化并调用其中一个.NET程序集对象上的方法。
两者都编译为DLL(然后C ++ DLL从NTVDM作为VDD加载,但这可能不相关。)
如果可能的话,我想避免使用COM,因为我需要在不触及注册表的情况下进行部署。此外,我将Visual Studio 2008 Express版用于C ++和VB.NET。
请问,最好的方法是什么?
答案 0 :(得分:1)
如果你不想使用COM 而我不怪你,我只会创建一个web服务,并通过它公开你的功能。它易于使用C ++访问Web服务,并且易于在VB.NET中公开。
(更新)
Here是指向博客的链接,该博客介绍了如何在没有IIS的情况下公开Web服务
答案 1 :(得分:1)
您真的需要原生C ++,还是可以使用C ++ / CLI?
如果您可以在C ++ / CLI中完成所有操作,那么您最终将使用纯.NET应用程序。
如果您需要'native'C ++,那么您可以直接从Visual Studio创建一个包含托管和非托管C ++的程序集(本机C ++调用C ++ / CLI,然后调用VB.NET)。
而且,如果您希望将整个批次集中在一个程序集中,则可以按照linking native C++ into C# applications的说明进行操作。它也适用于VB.NET。
我强烈推荐Heege的“Expert C ++ / CLI”(1-59059-756-7)