gpt4 book ai didi

delphi - 尝试加载库时出现 AccessViolation 异常

转载 作者:行者123 更新时间:2023-12-02 19:40:34 25 4
gpt4 key购买 nike

我正在尝试在我的 Delphi 项目中加载一个库,该库可以位于两个位置。因此,要加载它,我使用以下代码:

  try
FHandle:=LoadLibrary(('some\address'));
except on EAccessViolation do
FHandle:=LoadLibrary(('another\address'));
end;

但是,我遇到了问题,因为它从未达到异常,我收到错误,存在访问冲突,但它不会尝试从其他地址加载...

有人知道原因吗?

谢谢

最佳答案

LoadLibrary 不会引发异常。它是一个 Win32 函数。咨询documentation如果失败,您将看到它返回NULL

您的代码应该是:

FHandle := LoadLibrary('some\address');
if FHandle = 0 then
FHandle := LoadLibrary('another\address');
if FHandle = 0 then
// handle the error, probably by raising an exception

另一个选择可能是使用 FileExists 来检查哪个可能位置包含该文件。

关于delphi - 尝试加载库时出现 AccessViolation 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18742489/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com