2011-01-07 16 views
1

SituationAbbrechen eines InnoSetup Installateur

Während der Installation unseres Produktes ich erkennen, ob unsere Programme noch (aus einer früheren Installation) ausgeführt werden durch CheckForMutexes verwenden. Wenn unsere Programme noch laufen, öffne ich ein Meldungsfeld (mit MsgBox), das dem Benutzer sagt, die Programme zu schließen. Wenn der Benutzer auf OK klickt und unsere Programme nicht geschlossen haben, wird das gleiche Meldungsfeld angezeigt. Ich möchte eine Abbrechen-Schaltfläche in der MsgBox anzeigen, die die Installation abbricht, was für den Fall gewünscht wird, dass der Benutzer die laufenden Programme nicht schließen möchte.

Frage

Wie kann ich abbrechen ein InnoSetup programmatisch installieren?

Vielen Dank im Voraus

Antwort

1

Werfen Sie einen Blick auf InitializeSetup und Abort im Setup-Hilfe Inno. Die Funktion Abort ermöglicht das Beenden des Setups.

+0

Relevante Link: http://www.jrsoftware.org/ishelp/topic_isxfunc_abort.htm – Bernard

+0

Dies wird nicht das Setup verlassen, wenn es aus dem Inneren eines bestimmten Ereignisses Funktionen aufgerufen wird, wie InitializeSetup, InitializeWizard oder CurStepChanged, die ist nicht der Fall. – jachguate

0

Rufen Sie die WizardForm.Close() -Methode auf.

Der Benutzer wird gefragt, ob er die Installation wirklich abbrechen möchte.

procedure ExitSetup; 
begin 
    WizardForm.Close; 
end; 
+0

Es wird nicht funktionieren, wenn der Assistent noch nicht gestartet wurde –

+0

@Tamir, lesen Sie bitte die Frage, OP besagt, dass sie nach laufenden Programmen suchen, und es gibt keine Möglichkeit, das zu überprüfen, bevor der Assistent startet, wenn ich recht habe. – jachguate

Verwandte Themen