在我的方案中,我需要检查是否已安装程序作为必备软件。 为此,我需要检查是否安装了文件,但是我的代码无法正常工作。
文件是否存在,Inno Setup仍将运行DOSETUP.exe
。
function PrepareToInstall(var NeedsRestart: Boolean): String;
begin
if not (FileExists(ExpandConstant('"{pf}\Medical Connections\DicomObjects\DicomObjects.ocx"')))then
begin
ExtractTemporaryFile('DOSETUP.exe');
ExtractTemporaryFile('DicomObjects.ocx');
ExtractTemporaryFile('DicomObjects.lic');
ExtractTemporaryFile('DicomObjects.dep');
Exec(ExpandConstant('{tmp}\DOSETUP.exe'), '', '', SW_SHOW,ewWaitUntilTerminated, ResultCode);
Exec('cmd.exe',ExpandConstant('/c XCOPY "{tmp}\Dicom*" "{pf}\Medical Connections\DicomObjects\" /Y'), '', SW_HIDE, ewWaitUntilTerminated, ResultCode);
end;
end;