Ich arbeite an einem Windows-Installer mit dem WIX-Toolkit, und es dauert FOR EVER (15-45 Sekunden) für den UAC-Dialog während einer Installation auf. Gibt es eine Möglichkeit, dies zu beschleunigen?Warum dauert es lange, bis der UAC-Dialog angezeigt wird?
Antwort
Jedes Mal, wenn Sie Software mit Windows Installer installieren, wird vor der eigentlichen Installation ein Wiederherstellungspunkt erstellt. Ref: http://msdn.microsoft.com/en-us/library/aa372060.aspx
Sie können diese drehen in der Registrierung aus: http://msdn.microsoft.com/en-us/library/aa369758.aspx
, weil Windows wird überprüft, ob das Paket eine digitale Signatur hat.
Leider ist der digitale Signaturverifikationsalgorithmus nicht sehr gut. Auch seine Leistung hängt von der Paketgröße ab. Ein größeres Paket hat also eine längere Verzögerung.
Um die Verzögerung zu vermeiden, können Sie Ihrem MSI einen einfachen EXE-Bootstrapper hinzufügen. Zweck ist es, eine Erhöhung über eine application manifest anzufordern und das MSI daneben zu starten. Wenn Sie Ihr MSI nicht darin einschließen, wird der Bootstrapper eine kleine Größe haben. Der digitale Signaturcheck wird also sehr schnell sein.
Ich werde dies versuchen und sehen, wie es geht. – Brian
Danke an joegrage, dass Sie mich auf diesem Weg in die richtige Richtung weisen. Der Trick dazu scheint die MSIFASTINSTALL
Eigenschaft zu sein.
Die Eigenschaft MSIFASTINSTALL
kann verwendet werden, um die Zeit zu reduzieren, die für die Installation eines großen Windows Installer-Pakets erforderlich ist. Die Eigenschaft kann in der Befehlszeile oder in der Eigenschaftstabelle festgelegt werden, um Vorgänge zu konfigurieren, die nach Ansicht des Benutzers oder Entwicklers für die Installation nicht erforderlich sind.
Der Wert der MSIFASTINSTALL-Eigenschaft kann eine Kombination der folgenden Werte sein.
value Meaning ----- ----------------------------------------------------------- 0 Default value 1 No system restore point is saved for this installation. 2 Perform only File Costing and skip checking other costs. 4 Reduce the frequency of progress messages.
In WIX, können Sie eine Kombination dieser Werte wie so verwenden:
<Property Id="MSIFASTINSTALL" Value="3" />
Eine ausführlichere Schreib über dieses Objekt kann auf this Blog-Eintrag zu finden.
Die referenzierte Verbindung ist tot :( – GTAE86
@ GTAE86 Entfernte Verbindung. Der Text, der im Beitrag enthalten war, wurde wörtlich von der MSDN Seite kopiert, also ist alles, was Sie wissen müssen, bereits im Pfosten. – Brian
Yep, und es funktionierte wie ein Charme. Vielen Dank! – GTAE86
- 1. Warum dauert es so lange, bis eine leere Ergebnismenge in linqtosql angezeigt wird?
- 2. Wie lange dauert es, bis eine App-Bewertung in iTunes Connect angezeigt wird?
- 3. Wie lange dauert es, bis ein Bild ausfällt -?
- 4. Wie lange dauert es, bis Google redirect uri ändert
- 5. Wie lange dauert es, bis eine Video-Sitemap indexiert ist?
- 6. Wie lange dauert es, bis iAd-Apps Impressionen generieren?
- 7. Timing, wie lange es dauert, bis Subprozess abgeschlossen ist
- 8. Wie lange dauert es, bis Android in den Schlafmodus wechselt?
- 9. Warum dauert Datei_Get_Contents so lange?
- 10. ProcessBuilder und Process.waitFor(), wie lange dauert es?
- 11. Warum dauert es so lange, bis Meteor meine Daten auf Heroku lädt?
- 12. Wie lange dauert es, bis eine AdMob-Anzeigenblock-ID aktiv wird?
- 13. Warum dauert es so lange, eine Tabelle zu erstellen?
- 14. Warum dauert es so lange, eine ASP.NET-Website zu starten?
- 15. Warum dauert es so lange, eine Spalte in mysql umzubenennen?
- 16. Warum dauert mein Programm so lange?
- 17. Warum dauert mein in.ready() so lange?
- 18. Warum dauert diese Zugriffsabfrage so lange?
- 19. Warum dauert HTTPWebRespense länger, auch wenn HTTPWebRequest lange zurückgesendet wird?
- 20. Python - warum dauert dieser Code so lange?
- 21. Warum dauert /^(.+)+Q$/.test("XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX ") so lange?
- 22. Capybara rspec Test dauert sehr lange - warum?
- 23. form.submit() dauert zu lange
- 24. Warum Index Only Scan dauert so lange?
- 25. Warum ActionDispatch :: Routing :: RouteSet dauert so lange
- 26. Funktion überspringen, wenn es zu lange dauert
- 27. Warum dauert der Aufbau von Docker so lange?
- 28. Opencart Registrierung dauert sehr lange
- 29. iPhone: Wie lange dauert es zu suchen?
- 30. Timeout-Funktion, wenn es zu lange dauert
Meine Vermutung ist auch, dass es die Schaffung eines Wiederherstellungspunktes ist, der dein Problem ist. Versuchen Sie, dies zu lesen: http://StackOverflow.com/A/6866634/600559 –