需要复用 aardio 调用 vs 编写的dll (cdecl方式和stdcall方式)_qq_31683775的博客-CSDN博客 文章 stdcall方式 生成的.lib和.dll 文件 ,以及工程中的.h文件

新建 vs 工程 
删除自动生成的示例发放,添加fadd方法的声明和实现


复制 .lib和.dll 文件 .h文件 到工程目录

将 vs 工程 默认的cdecl方式改为stdcall方式
右键工程 -> 属性 -> 
右键工程 -> 新建项
编辑新建的文件
- LIBRARY "INCLUDEDLLTEST"
- EXPORTS
- fadd
其中第一行指定最终生成的dll的文件名,不带.dll后缀
第二行为关键词
第三行及以下指定导出的方法名
生成dll
新建aardio 控制台工程
将本次生成的dll文件和本次dll 依赖的dll文件都复制到 aardio工程的dll文件夹

调用dll
- import console;
- console.setTitle("aardio工程2");
-
- /*
- 启动参数键值对前导字符可以为 / 或 - ,前导字符可重复多次。
- 键值对可以空格分开,也可用等号分开,例如: "/opt test" "-opt test" "--opt test" 或 "/opt=test"
- */
- if(_ARGV.opt == "test"){
- console.dump(_ARGV.opt,_ARGV[#_ARGV]) //_ARGV 既包含命名参数组成的键值对,也包含按参数顺序组成的数组
- }
-
- var str = console.getText("请输入一行文本,然后回车:");
- console.log("您输入的是" ,str );
-
-
- var dll=raw.loadDll("\dll\INCLUDEDLLTEST.dll",,"stdcall")
-
-
- var int1 = dll.fadd();
-
- console.log(int1);
-
- console.pause();
运行

打包生成aardio工程

复制
dll文件夹到.exe同级目录
运行exe
