2008-10-26 8 views
6

Ich bin ziemlich neu bei der Bereitstellung von Desktop-Anwendungen, daher ist dies das erste Mal, dass ich ein Installationsprogramm für meine Software erstelle. Momentan stürzt das Programm zum ersten Mal ab, nachdem ich es installiert habe. Danach läuft es gut. Ich bin gerade dabei, dieses Problem zu beheben, aber ich habe festgestellt, dass ein Neustart unmittelbar nach der Installation und vor dem Ausführen der Software diesen Absturz zu beheben scheint.Warum müssen einige Installationsprogramme den Computer neu starten, bevor Sie das Programm ausführen?

Aus welchen Gründen werden Sie von einigen Installationsprogrammen zum Neustart aufgefordert, bevor die Software ausgeführt wird?

Warum müssen einige Installationsprogramme vor dem Abschluss der Installation neu gestartet werden?

Vielen Dank im Voraus!

+0

Dieser Artikel kann finden helfen, warum der Neustart durch den Installateur benötigt wurde: https : //itayhauptman.wordpress.com/2016/05/30/installshield-detect-why-my-installer-asks-for-restart/ –

Antwort

8

Im Allgemeinen werden Neustarts zwischen Installation und Ausführung durchgeführt, weil Sie System-DLLs ersetzen, die gesperrt sind. Das Installationsprogramm richtet einen Run-Once-Registrierungseintrag ein, der die DLLs während des Startvorgangs kopiert, bevor sie von Windows gesperrt werden. Anschließend kann Ihre Anwendung die neue DLL verwenden, die Sie festgelegt haben.

Im Allgemeinen wird davon abgeraten. Es sollte keinen Grund mehr geben, dass jemand anders als Windows selbst nach der Installation neu starten muss.

Ich würde vorschlagen, zurück in einen Debugger zu gehen, um mehr Details darüber herauszufinden, warum Ihre Anwendung abstürzt. Hoffentlich haben Sie genug Spuren in Ihrem Code verfügbar, um diese Art des Debuggens zu ermöglichen.

1

Im Allgemeinen ist ein Neustart nur erforderlich, wenn das Installationsprogramm Dateien ersetzen muss, die derzeit vom Betriebssystem verwendet (und gesperrt) werden. Manchmal werden sich die Installateure auf der Seite des Neustarts gerade irren, aber das ist seltener als früher.

0

Wir haben einen Fall mit einem Installer, den ich beibehalten muss, wo wir einen Neustart nur für Vista erzwingen müssen, wegen UAC und Privilegienerhöhung. Sobald die Einrichtung abgeschlossen ist, müssen wir ein Programm als aktuellen Benutzerkontext auslösen, nicht den erhöhten Vista-Kontext.

In Ihrem Fall vermute ich, dass einige Dateien nicht korrekt registriert und Sie müssen nur mit dem Debuggen halten;)

Verwandte Themen