2010-08-02 5 views
0

Est-il possible de charger votre application WPF au démarrage de la machine? Notre application WPF prend 30 secondes sur notre matériel client existant, et nous aimerions "cacher" cela en ayant le démarrage de notre application lorsque la machine est démarrée. Mais le fait que notre application démarre au démarrage doit être invisible pour l'utilisateur.Amélioration de l'application WPF Coldstart: Suggestions pour exécuter le programme au démarrage de la machine

Comment pourrions-nous construire une telle chose? Y at-il un terme à google qui fournira un tutoriel? Ce serait bien s'il y avait un WPF spécifique - un que nous pouvons saisir. Remarque: Dans le cas où il y a des problèmes moraux à cela (puisque je suis d'accord que 20 programmes démarrant lorsque votre ordinateur est frustrant!), Nous construisons des logiciels pour une industrie spécialisée qui utilisera leur ordinateur pour fonctionner principalement nos applications.

+0

Pouvez-vous dire est ce qu'il charge/prépare? Ce délai ne peut pas provenir de WPF. –

+0

Nos machines client sont un peu obsolètes (Win XP, Intel Pentium M 1,4 GHz, 760 Mo de RAM) - sur ma machine dev un démarrage à froid est d'environ 13 secondes au lieu de 27. Notre autre application (nous construisons deux applications simultanées) J'imagine que les plus gros succès sont le framework UI DevComponents et un moteur TTS (y a-t-il un moyen de vérifier le temps de chargement de chaque DLL?) Process Explorer signale 21 "System DLL" (par exemple System. *, PresentationFramework, PresentationFramework .Aero, WPFToolkit), et 9 DLL pour nos projets (dont 4 ressources, application bilingue). – chocojosh

Répondre

3

L'approche la plus simple serait

  • assurez-vous que vos grandes bibliothèques sont installées dans le GAC
  • écrire une application factice qui utilise (la plupart) les libs. En fait, utilisez-les pour qu'ils soient chargés.
  • exécuter le mannequin au démarrage
  • faire l'arrêt factice par lui-même, ou le garder en vie cachée

Ce serait en aucun cas interférer avec le démarrage de l'application normale. L'avantage est que les bibliothèques sont chargées et compressées. L'inconvénient que votre application doit encore charger & initialiser.

0

Sasha avait quelques astuces de plus qui ne sont pas listées ici, en rebasant vos modules, en tirant parti de la fonction de préextraction et de compression (UPX, yuk!).

Questions connexes