我目前的要求是在c ++控制台应用程序中调用C#dll的一些方法。我有一个示例C#控制台应用程序代码,它调用c#dll中的方法。
C#dll被添加为C#控制台应用程序项目的参考。
using CSharp;
void fn()
{
string retVal;
CSharpApi obj = new CSharpApi("Something");
retVal = obj.Invoke("Something");
obj.Dispose();
....
....
}
CSharpApi的定义
namespace CSharp
{
public class CSharpApi : IDisposable
{
public CSharpApi();
public CSharpApi(string param1);
public string Invoke(string param1);
public void Dispose();
}
}
我需要编写一个与上述c#控制台应用程序等效的c ++控制台应用程序,但不知道如何实现它。是否可以使用LoadLibrary和GetProcAddress API调用C#dll方法?如果你能给我一些例子,我将非常感激。
答案 0 :(得分:0)
正如Joachim在评论中提到的那样,最简单的方法是使用C++/CLI managed .NET aplication,它为您提供两全其美的优势,您仍然可以以非托管方式编写大部分代码,并且一种调用托管代码的相对简单的方法。