waesaeasea 2018-08-16 08:49 采纳率: 15.6%
浏览 752
已采纳

一个C++写得DLL我应该怎么在c#里面声明及调用

DLL得接口说明是:
extern "C" __declspec(dllexport) BOOLEAN _stdcall setCard(UCHAR* strCardId, ULONG cardLen);//设置卡号(此函数必须在dll加载后,第一个调用)

extern "C" __declspec(dllexport) BOOLEAN test4( );//安装

extern "C" __declspec(dllexport) void test6(ULONG64* baseaddr,ULONG64 pid,WCHAR* moudleName);//读取数据 1 数据,参数2 数据ID,参数3 数据所在模块名称 unicode的字符串 如果为空取进程基础地址

我声明了以后调用提示错误:原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。

  • 写回答

2条回答

      报告相同问题?

      相关推荐 更多相似问题

      悬赏问题

      • ¥15 求用C语言数组编程(需要完整且正确的程序)
      • ¥15 前端和swagger调导出接口乱码
      • ¥20 有没有ftps服务器可以使用公钥登录的?
      • ¥20 Ffmpeg代码层面如何实现视频陪速播放
      • ¥15 用python定义函数实现功能使用列表中动漫信息
      • ¥15 unity 使用 Vuforia 导入Model target 成功后database下拉菜单不显示导入的内容
      • ¥15 VBA跨工作簿获取目标工作簿内已有数据的列号
      • ¥30 Dijkstra‘s 最短路径
      • ¥15 在线教育培训平台,主要以点播视频和在线练习测试为主,除将视频做切片外,有其他哪种方式降低流量?(关键词-带宽速率)
      • ¥20 用c语音或c++实现银行叫号系统