2010-11-30 9 views
0

Ist es möglich, mein Internet Explorer-Plugin zu aktualisieren, ohne eine manuelle Deinstallation/Neuinstallation mit dem MSI erforderlich? Ich habe versucht, dies programmatisch zu tun, aber ich bin mir nicht sicher, was getan werden müsste (Registrierung von DLLs usw.).Update IE Addon

Danke, Nathan

Antwort

1

Laden Sie einfach die neue MSI im Hintergrund. Wenn dies erledigt ist, fordern Sie den Benutzer auf und wenn er damit einverstanden ist, führen Sie das neue MSI aus.

RE: Vermeidung von Benutzereingaben: Sie können es ohne ihre Erlaubnis tun ... aber seit der Installation eines neuen Add-ons erfordert Neustart des Browsers, das kann nicht das Beste sein, nach dem Zufallsprinzip zu tun. Sie könnten es tun, wenn Sie wissen, dass die Geschäfte geschlossen sind, aber was ist, wenn sie um Mitternacht für Black Friday öffnen? Du musst darüber nachdenken.

Eine Alternative besteht darin, eine Stub-DLL zu implementieren, die alle von Ihrer Erweiterung implementierten Schnittstellen verfügbar macht und diesen Stub als denjenigen registriert, den IE lädt. Dann kann Ihr Stub loadlibrary auf der realen DLL aufrufen und alle Anrufe durchhören. Wenn Sie eine neue Version installieren möchten, laden Sie die neue Implementierungs-DLL herunter und lassen Sie den Stub entladen und laden Sie den neuen. Wenn Sie dies richtig machen, kann es für den Benutzer ohne Probleme sein ... Die Schwierigkeit kommt, wenn die neue DLL neue Registrierungseinträge benötigt oder Sie müssen den Stub aktualisieren ... usw. All diese Probleme können gelöst werden, aber der Aufwand ist erforderlich explodiert.

Mein Rat ist es einfach zu halten, bis Sie unbedingt zu diesen Längen gehen müssen.

+0

Das ist eigentlich, was ich beschlossen habe. Es ist jedoch immer noch nicht perfekt, da es an Einzelhandelsketten geliefert wird, die viele Terminals verwenden, so dass jegliche Benutzereingaben unerwünscht sind. – Nathan