c# 调用c++ 的dll 出现找不到函数入口点

今天在调用一个设备的dll文件时遇到了一点波折,因为多c++ 不熟悉,调用过程张出现了找不到函数入口点,一般我们使用c# 调用c++ 文件,还是比较简单。

cs 复制代码
  [DllImport("AtnDll2.dll",CharSet = CharSet.Ansi)]
  public static extern bool CL_Init(IntPtr nPort);

      

这个是能够正常调用成功的。

但是,设备有多家厂商的,用的开发语言也不一样,上图是C语言开发的,调用起来很顺利。

下面这种情况,我开始蒙的,以为是这个工具的问题,找出的函数出现乱码。然而,这才是正确的函数名称。调用的时候按这个函数名调用即可。

cs 复制代码
 [DllImport("APTMotion.dll",EntryPoint ="?CL_Init@CAPTMotion@@QAEHH@Z", CallingConvention = CallingConvention.Winapi)]  //CAPTMain::
 public static extern int CL_Init (IntPtr nPort);

还有一个要注意的是,CallingConvention = CallingConvention.Winapi 要加上,不然会提示

这里也比较推荐用 叮咚茶的这个DLL 函数查看工具。

其他的工具是查询不这个带有? @ 类似的函数名称的。

比较少写文章,主要鄙人技术一般,在这记录一下,方便又需要的人参考,大神请绕行。

相关推荐
代码游侠8 分钟前
学习笔记——ESP8266 WiFi模块
服务器·c语言·开发语言·数据结构·算法
行者9613 分钟前
Flutter跨平台开发适配OpenHarmony:进度条组件的深度实践
开发语言·前端·flutter·harmonyos·鸿蒙
DYS_房东的猫17 分钟前
《 C++ 零基础入门教程》第3章:结构体与类 —— 用面向对象组织代码
开发语言·c++
向量引擎20 分钟前
复刻“疯狂的鸽子”?用Python调用Sora2与Gemini-3-Pro实现全自动热点视频流水线(附源码解析)
开发语言·人工智能·python·gpt·ai·ai编程·api调用
郑泰科技23 分钟前
快速地图匹配(FMM)的开源工具与代码示例
c++·windows·python·交通物流
CoderCodingNo23 分钟前
【GESP】C++五级练习(贪心思想考点) luogu-P1115 最大子段和
开发语言·c++·算法
Q741_14724 分钟前
C++ 队列 宽度优先搜索 BFS 力扣 429. N 叉树的层序遍历 每日一题
c++·算法·leetcode·bfs·宽度优先
a程序小傲25 分钟前
得物Java面试被问:边缘计算的数据同步和计算卸载
java·开发语言·数据库·后端·面试·golang·边缘计算
唐青枫25 分钟前
C#.NET ConcurrentBag<T> 设计原理与使用场景
c#·.net
lly20240626 分钟前
PHP 运算符
开发语言