1.新建一个C++空项目CPPTest
2.新建一个PInvokeTest.cpp文件,并写下如下代码
需要注意:下文中的两个函数名HelloWorld需要完全一致,只有这样才能确保被完全声明为一个其他语言可调用的全局函数。
#include <iostream> extern "C" __declspec(dllexport) void HelloWorld(); void HelloWorld() { std::cout << "hello world!"; }
3.新建一个C#控制台程序CSharpTest
4.在C#控制台程序中的Program中加入如下代码
需要注意:在C#中
internal class Program { static void Main(string[] args) { HelloWorld(); } [DllImport("CPPTest.dll")] public static extern void HelloWorld(); }
5.编译解决方案,在编译完成后将CPPTest.dll复制到CSharpTest项目的exe文件目录下
6.启动......搞定!
标签:无参,Invoke,C#,void,函数调用,dll,CPPTest,HelloWorld,C++ From: https://www.cnblogs.com/ShawBlack/p/17063222.html