如何把C++里的函数封装成C#的静态方法啊
怎么把C++里的函数封装成C#的静态方法啊?
我使用vs2010,已经能够在win32项目中使用C++的函数了,怎么在C#windows窗体中使用呢?
------解决方案--------------------
方法一,可以将该组件封装成COM组件,然后在.net项目中引用
方法二,将相应函数按C样式函数导出。
方法二示例:
extern "C" __declspec(dllexport) int __stdcall test(int a, int b)
{
return 0;
}
生成为 TestDll.dll,将放在.net应用程序集探测目录,比如与生成的winform目标exe文件相同目录。
c# 调用示例:
public static class TestDll
{
[DllImport("TestDll.dll",
EntryPoint = "test",
CallingConvention = CallingConvention.StdCall)]
public static extern int test(int a, int b);
}
class Program
{
static void Main(string[] args)
{
var result = TestDll.test(1, 2);
}
}
我使用vs2010,已经能够在win32项目中使用C++的函数了,怎么在C#windows窗体中使用呢?
------解决方案--------------------
方法一,可以将该组件封装成COM组件,然后在.net项目中引用
方法二,将相应函数按C样式函数导出。
方法二示例:
extern "C" __declspec(dllexport) int __stdcall test(int a, int b)
{
return 0;
}
生成为 TestDll.dll,将放在.net应用程序集探测目录,比如与生成的winform目标exe文件相同目录。
c# 调用示例:
public static class TestDll
{
[DllImport("TestDll.dll",
EntryPoint = "test",
CallingConvention = CallingConvention.StdCall)]
public static extern int test(int a, int b);
}
class Program
{
static void Main(string[] args)
{
var result = TestDll.test(1, 2);
}
}