Question

Dans un projet de fenêtres je travaille, je l'intention d'avoir une sélection de menu qui redémarre copletely l'application. Y at-il une fonction Windows ou C ++ qui fait cela?

Était-ce utile?

La solution

Il n'y a pas intégré pour cela, mais une application bien conçue peut simplement arrêter tout ce qui se passe et ensuite en boucle revenir au début. Si vous voulez un vrai « nouveau départ », vous devrez lancer un nouveau processus (peut-être la dernière chose que vous faites avant que l'ancien arrête.)

Autres conseils

Non, vous devez le faire vous-même. Par exemple, vous pouvez exécuter processus externe qui attendra jusqu'à ce que vous quittez l'application, puis exécutez-le à nouveau.

En fait, vous voudrez peut-être jeter un oeil à l'API Gestionnaire de redémarrage qui est entré avec Windows Vista. Comme toujours, vous pouvez p-invoquer ce contenu de votre cœur et leur soutien explicite à venir pour elle dans Visual C ++ 2010 .

Déjà nécessaire pour le faire. La meilleure façon sans lecture plus serait d'écrire simple .bat fichier (soit manuellement ou dynamiquement par votre application) à partir de votre programme, puis d'appeler ce fichier de chauve-souris de votre application.

Le fichier de chauve-souris peut même contenir une ligne de se retirer après avoir commencé votre application ...

Vous voulez appeler CreateProcess puis fermez votre instance actuelle de l'application grâce à ExitProcess () , ou si vous créez un lien vers le moteur d'exécution C, juste retour de main (). Mais d'abord, vous devez vous demander pourquoi vous avez besoin de recréer le processus en premier lieu.

ExitWindowsEx est ce que vous voulez. Vous pouvez également exécuter l'utilitaire shutdown.exe intégré dans Windows.

shutdown -t0 -r (restart the system after 0 seconds)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top