随笔 - 36  文章 - 0 评论 - 7 阅读 - 3693
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

问题:在VC中定义了一个函数

extern "C" __declspec(dllexport) int test(const char* filename)

filename中可能有中文。

Lazarus调用test传英文没问题,传中文出错。

1、在VC项目设置-高级中 选择“使用 Unicode 字符集”   --这个也是VC的默认值

2、在lazarus中在项目设置-编译器选项-附加和覆盖-使用系统编码 选中所有的构建模式

就可以正常传带中文的字符串了

 20240321 更新方法二(推荐)

引用,LazUTF8单元

用UTF8ToWinCP转换后可以被VC的dll读取

posted on   禁卫军  阅读(136)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示