Comment puis-je redémarrer mon application WPF en utilisant C#?Redémarrer l'application en utilisant C#
Répondre
Je ne pense pas qu'il existe une méthode directe dans WPF comme dans WinForms. Cependant, vous pouvez utiliser des méthodes de l'espace de noms Windowns.Form
comme ceci: (Vous devrez peut-être ajouter une référence à l'ensemble System.Windows.Form
)
System.Windows.Forms.Application.Restart();
System.Windows.Application.Current.Shutdown();
Vous pouvez utiliser l'API de redémarrage et de récupération du Windows API Code Pack. Sachez simplement qu'il s'agit d'une nouvelle API, elle ne fonctionnera donc que sur les systèmes d'exploitation actuels (Windows 7).
Il devrait également fonctionner sur Vista. –
Voici la meilleure solution que j'ai trouvé, vous n'avez pas besoin d'ajouter une référence à System.Windows.Forms, au lieu que vous avez besoin d'ajouter l'espace de noms System.Diagnostics
qui vous a déjà une référence à son assemblée:
Process.Start(Application.ResourceAssembly.Location);
Application.Current.Shutdown();
Notez que vous ne souhaitez pas utiliser cette méthode si votre application est déployée avec ClickOnce. Le 'ApplicationDeployment.IsNetworkDeployed' sera faux lorsque vous redémarrez. Voir http://bit.ly/RKoVBz pour plus d'informations. Si votre application n'est pas déployée avec ClickOnce, cette méthode fonctionne très bien. – blachniet
@blachniet Aussi, vous commencerez la * vieille * version après une mise à jour si vous utilisez cette méthode. Ce problème est également évité lors de l'utilisation de la méthode winforms. – John
- 1. Comment redémarrer une requête en utilisant NSFetchedResultsController
- 2. Redémarrer par programme IIS7 (C#)
- 3. Poignée toutes les clés de registre sans redémarrer en C#
- 4. redémarrer l'application sans redémarrer le serveur?
- 5. Afficher l'icône en superposition sans redémarrer l'explorateur
- 6. Redémarrer nginx sans sudo?
- 7. Obtenir le processus parent/Redémarrer un processus C#
- 8. delayed_job redémarrer de capistrano
- 9. Rails continue de redémarrer en production Passager
- 10. Redémarrer les threads normaux
- 11. en utilisant MySql.data en C#
- 12. En utilisant DirectoryInfo en C#
- 13. En utilisant DrawThemeTextEx en C#?
- 14. WaterMark en utilisant C#
- 15. Est-il possible de redémarrer un PC en utilisant "pure" .NET et * sans * en utilisant p/invoke?
- 16. Redémarrer un service Windows à partir du C#
- 17. Redémarrer CoreAnimation après l'affichage apparaît
- 18. Redémarrer l'arrière-plan travailleur
- 19. Timer dans le service Windows C# de ne pas redémarrer
- 20. IIS7 redémarrer le numéro
- 21. redémarrer le pilote vidéo (programatically)
- 22. Comment redémarrer Interbase
- 23. comment redémarrer les scripts automatiquement
- 24. Redémarrer la connexion PPP à partir de C#
- 25. Comment faire pour redémarrer un programme Visual C#
- 26. Comment redémarrer avec élégance django en exécutant fcgi derrière nginx?
- 27. Comment redémarrer la scène du jeu en utilisant la vue d'alerte dans cocos2d
- 28. comment redémarrer un thread dans vC++, je l'ai créé en utilisant CreateThread
- 29. Actualiser/Redémarrer l'écran de connexion graphique de Vista en utilisant JScript (WSH)
- 30. En utilisant java.util.logging, est-il possible de redémarrer les logs après une certaine période de temps?
Que voulez-vous dire par «redémarrer»? –
très simple fermez-le et redémarrez-le automatiquement: D – kartal