Wenn Sie ein einfaches "Hello World"-VSTO2SE-Add-In für Microsoft Office Excel 2003 erstellen, dauert es beim Kaltstart 15 Sekunden, bis es geladen ist. Während dieser Zeit reagiert Excel überhaupt nicht.
Die Kaltstartzeit ist in Excel 2003 immer schlecht. Ich habe einen Testcomputer gesehen, bei dem die Startzeit in Excel 2007 sofort erreicht wurde, aber alle anderen Testcomputer brauchen 15 Sekunden zum Initialisieren. (Testumgebung - Windows xp pro + VSTO2SE Laufzeitumgebung + XP SP3)
Wie kann diese Leistung verbessert werden?
Dinge, die ich bereits erfolglos ausprobiert habe:
-
Deaktivieren Sie die CRL-Prüfung (Certificate Revoke List) - dies scheint nicht zu helfen, und ich kann nicht erwarten, dass die Benutzer dies tun.
-
Verwenden Sie NGEN, um native Assemblies zu erstellen.
a) Es scheint, dass Office 2003 nie die nativen Assemblies verwendet. b) Mein Office 2007-Testclient, der schnell startet, tut dies auch mit IL-Assemblies. c) Selbst wenn ich meinen gesamten Depencency-Baum NGEN, gibt es immer noch VSTO-Abhängigkeiten, die möglicherweise nicht über native Bilder. -
Verzögern Sie das Laden des Add-Ins - das ist die "Standardantwort", die ich von Microsoft erhalte. Das Problem ist, dass mein Add-In von einem Menüpunkt aus gestartet wird - wie kann ich das Laden des Add-Ins verzögern und trotzdem meine Menüs erhalten? Ich könnte ein VB6-Add-In verwenden, um die Menüs zu zeichnen und die Aufrufe über Interop weiterzuleiten, aber warum sollte ich dann überhaupt ein VSTO-Add-In schreiben?
Bearbeiten - Ja, das ist die einzige Zeile im Ereignis "Verbindung" im Add-In. (eigentlich messagebox).. Es dauert ganze 15 Sekunden, bis das Meldungsfenster erscheint. - J Davis