InnoSetupでsetup.exeの同時起動を排他するにはMutexを使います。
コードはこんなところでしょうか。
[Code]
const
MySetupMutex = 'MySetupsMutexName';
function InitializeSetup: Boolean;
begin
Result := not CheckForMutexes(MySetupMutex);
if Result then begin
CreateMutex(MySetupMutex)
end else begin
MsgBox('Another instance is running. Setup will exit.', mbError, MB_OK);
end;
end;
InnoSetup 5.5.6 からは[Setup]セクションに1行書けばOK.
[Setup]
SetupMutex=MySetupsMutexName,Global\MySetupsMutexName