作者:周俊瑶zjy_963 | 来源:互联网 | 2023-06-06 18:06
写了个delphiocx,在32位上运行没有问题,但在64位下极容易出现卡死现象,而打印日志分析,确定程序总是在GetFileVersionInfoSize这个方法之后就没有响应了ilen
写了个delphi ocx,在32位上运行没有问题,但在64位下极容易出现卡死现象,而打印日志分析,确定程序总是在
GetFileVersionInfoSize这个方法之后就没有响应了
ilen := GetFileVersionInfoSize(PChar(CtrlFullName), lpdwHandle);
而且不是每次都卡死,十次里大概出现一次,这个大概可能是什么原因,如何进一步排查
lpdwHandle每次调用打印值都是0,CtrlFullName也是相同的OCX地址
3 个解决方案
你是32位编译,再在64位上运行,还直接在62位上编译呢。二者有很大区别。
在64位机器上调试程序,看是否GetFileVersionInfoSize引起