精易论坛

标题: 易语言SetLastError()无效??? [打印本页]

作者: yeweiyang    时间: 2023-4-21 00:36
标题: 易语言SetLastError()无效???


如图,设置错误后,再get,永远是126,同样代码visual studio中用C++测试完全没问题,只有易语言,永远报126


有没有大手子知道为什么的


补充内容 (2023-4-21 01:34):
已自行解决
作者: 福仔    时间: 2023-4-21 00:36

没发现问题, 不过你可以在设置之前先获取一次, 我记得易语言是有一点问题的...
作者: yeweiyang    时间: 2023-4-21 01:34
福仔 发表于 2023-4-21 01:17
没发现问题, 不过你可以在设置之前先获取一次, 我记得易语言是有一点问题的... ...

已经分析完了,易语言声明的DLL会包装,getlasterror() 实际是包装后的,里面还有其他各种API,会扰乱最后的结果。

最好的方式是直接从dll中取函数地址,然后调用。

要么就先按照福哥你的方式,先取一次,但是只是临时解决方案,不排除后面还会有其他错误干扰。




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4