为什么火山PC的函数调用协议还是__stdcall的?
最近在尝试使用火山LUA,发现注册的函数调用之后程序就立即终止了,一直找不到是什么问题,找到了易语言大佬kyozy的lua中文修改版,
才发现易语言的要将回调函数改为__stdcall协议才能用。
没想到火山的也要改为__stdcall协议才能用......
所以为什么火山PC的函数调用协议还是__stdcall的?
Vanyogin 发表于 2022-3-9 09:55
小白一枚,不会改,看来只能用64位了。
属性名那里设置为 @视窗.前缀文本 @__cdecl 火山的静态方法是stdcall,成员函数是cdecl
火山默认的就是__stdcall,如果lua是原生代码,回调函数必须要设置为__cdecl,这是32位程序的一个历史遗留问题,64位就不需要设置了,因为64位就只有一种调用约定,采用的是变形的__fastcall 福寿 发表于 2022-3-8 17:19
火山默认的就是__stdcall,如果lua是原生代码,回调函数必须要设置为__cdecl,这是32位程序的一个历史遗留 ...
小白一枚,不会改,看来只能用64位了。
页:
[1]