搜索
aardio官方社区 门户 查看主题

关于dll 传入string 字符串

发布者: 龙图腾飞 | 发布时间: 2017-10-27 08:41| 查看数: 361| 评论数: 3|帖子模式

dll cpp

  1. extern "C" __declspec(dllexport)  int  test(char* port){
  2.        
  3.         return 0;
  4.        
  5. }
复制代码


dll h

  1. extern "C" WIN32DLL_API int  test(char* port);
复制代码


aardio

  1.         dll  = raw.loadDll("/sdk/Test.dll");
  2.         test  = dll.api("test","int(string port)");
  3.         d  = test("com4");
复制代码

运行 就提示 已停止工作 正在查找方案

最新评论

龙图腾飞 发表于 2017-10-27 08:49:14
我找到原因了如果只传递字符串的话 用const char *port

  1. extern "C" __declspec(dllexport)  int  test(const char *port){
  2.        
  3.         return 0;
  4.        
  5. }
复制代码
Jacen.He 发表于 2017-10-27 08:51:53
string或const char *是只读的,要写字符串内存,在aardio里声明为 string &
龙图腾飞 发表于 2017-10-27 09:09:32
Jacen.He 发表于 2017-10-27 08:51
string或const char *是只读的,要写字符串内存,在aardio里声明为 string &

感谢 群主 指导

手机版|未经许可严禁引用或转载本站文章|站长邮箱|aardio.com|aardio官方社区 ( 皖ICP备09012014号 )

GMT+8, 2018-1-20 18:40 , Processed in 0.046875 second(s), 19 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表