Мне нужно подписать файл .exe с помощью .. \ x64 \ signtool.exe.Однако это, очевидно, не работает во время работы программы .exe, которая предположительно блокирует файл .exe.Поэтому я пытаюсь определить, заблокирован ли файл .exe с помощью этой функции:
function IsExeFileLocked(const AFilename: string): Boolean;
var
F: TFileStream;
begin
try
F:=TFileStream.Create(AFilename, fmOpenRead or fmShareDenyNone);
try
Result:=False;
finally
F.Free;
end;
except
Result:=True;
end;
end;
Но эта функция всегда возвращает False
, даже если программа .exe работает!
Так как же определить, заблокирован ли файл .exe при запуске?