gpt4 book ai didi

delphi - 检查资源是否存在于 Delphi 的另一个应用程序中

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

我正在尝试验证资源是否存在于另一个 Delphi 应用程序中,问题是只知道如何在本地执行此操作,我的意思是在应用程序本身中。

来源:

function exists_resource(name: string): boolean;
begin
if (FindResource(HInstance, PChar(name), RT_RCDATA) <> 0) then
begin
Result := True;
end
else
begin
Result := False;
end;
end;

我可以在不同的应用程序中验证这一点吗?

最佳答案

使用LoadLibraryEx加载外部文件。

function exists_resource(const name, filename: string): boolean;
var
HInst: THandle;
begin
HInst:= LoadLibraryEx(PChar(Filename), 0, LOAD_LIBRARY_AS_DATAFILE or LOAD_LIBRARY_AS_IMAGE_RESOURCE);
//Win32Check(HInst); //Uncomment if you want to generate errors.
if HInst = 0 then exit(false);
try
Exit((FindResource(HInst, PChar(name), RT_RCDATA) <> 0));
finally
FreeLibrary(Hinst);
end; {try}
end;

请注意,以这种方式使用 LoadLibraryEx 将适用于加载 dll 和 exe。

关于delphi - 检查资源是否存在于 Delphi 的另一个应用程序中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36190569/

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