page contents

C#调用C函数的方法

本文讲述了C#调用C函数的方法!具有很好的参考价值,希望对大家有所帮助。一起跟随六星小编过来看看吧,具体如下:

attachments-2022-05-WEZVmCbo62844adb7d9f3.png

本文讲述了C#调用C函数的方法!具有很好的参考价值,希望对大家有所帮助。一起跟随六星小编过来看看吧,具体如下:

C#调用C函数的方法:

方法一:

1.新建Visual C++类型的Win32项目

C语言的函数定义如下:

extern "C" __declspec(dllexport) int fnTestWin32(void);

实现如下

extern "C" __declspec(dllexport) int fnTestWin32(void)

{

 return 42;

}

工程属性页[常规]->[配置类型]选择[动态库.dll]

会生成.lib和.dll文件。用Dependency工具能看到fnTestWin32函数,因为使用了extern "C"

2.C#工程中

        [DllImport("TestWin32.dll", EntryPoint = "fnTestWin32", CharSet = CharSet.Ansi)]

        private static extern int fnTestWin32();

把Win32项目生成的dll拷贝到C#生成的exe文件,就可以调用了。

方法二:

1.新建Win32工程

直接使用C语言,函数定义不使用extern "C" __declspec(dllexport)

工程属性页[常规]->[配置类型]选择[静态库(.lib)] 

2.新建Visual C++ CLR 类库工程

这里面写的是C++的类,提供给C#直接调用的,作为C与C#的中转,主要使用Marshal类

应用上面的Win32工程,并包含头文件

extern "C"

{

#include "app_notify.h"

}

3.C#工程中直接使用CLR类库工程生成的dll

更多相关技术内容咨询欢迎前往并持续关注六星社区了解详情。

如果你想用Python开辟副业赚钱,但不熟悉爬虫与反爬虫技术,没有接单途径,也缺乏兼职经验
关注下方微信公众号:Python编程学习圈,获取价值999元全套Python入门到进阶的学习资料以及教程,还有Python技术交流群一起交流学习哦。

attachments-2022-06-oJTpfXnb62b416100d9d0.jpeg

  • 发表于 2022-05-18 09:25
  • 阅读 ( 1628 )
  • 分类:C/C++开发

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
轩辕小不懂
轩辕小不懂

2403 篇文章

作家榜 »

  1. 轩辕小不懂 2403 文章
  2. 小柒 1312 文章
  3. Pack 1135 文章
  4. Nen 576 文章
  5. 王昭君 209 文章
  6. 文双 71 文章
  7. 小威 64 文章
  8. Cara 36 文章