Partager via


Guide pratique pour ajouter la prise en charge du Gestionnaire de redémarrage

Le gestionnaire de redémarrage est une fonctionnalité ajoutée à Visual Studio pour Windows Vista ou versions ultérieures. Le Gestionnaire de redémarrage prend en charge votre application, si elle se ferme ou redémarre de façon inattendue. Le comportement du Gestionnaire de redémarrage dépend du type de votre application. Si votre application est un éditeur de documents, le Gestionnaire de redémarrage permet à votre application d’enregistrer automatiquement l’état et le contenu des documents ouverts. Par ailleurs, il redémarre votre application après une fermeture inattendue. Si votre application n’est pas un éditeur de documents, le Gestionnaire de redémarrage la redémarre. Toutefois, il ne peut pas enregistrer l’état de l’application par défaut.

Après avoir redémarré, l’application affiche une boîte de dialogue de tâches si l’application est au format Unicode. S’il s’agit d’une application ANSI, celle-ci affiche une boîte de message Windows. À ce stade, l’utilisateur choisit de restaurer ou non les documents enregistrés automatiquement. Si l’utilisateur ne restaure pas les documents enregistrés automatiquement, le Gestionnaire de redémarrage ignore les fichiers temporaires.

Remarque

Vous pouvez substituer le comportement par défaut du Gestionnaire de redémarrage pour l’enregistrement des données et le redémarrage de l’application.

Par défaut, les applications MFC créées à l’aide de l’Assistant projet dans Visual Studio prennent en charge le gestionnaire de redémarrage lorsque les applications sont exécutées sur un ordinateur disposant d’un système d’exploitation Windows Vista ou ultérieur. Si vous ne souhaitez pas que votre application prenne en charge le Gestionnaire de redémarrage, vous pouvez le désactiver dans l’Assistant Nouveau projet.

Pour ajouter la prise en charge du Gestionnaire de redémarrage à une application existante

  1. Ouvrez une application MFC existante dans Visual Studio.

  2. Ouvrez le fichier source de votre application principale. Par défaut, il s’agit du fichier .cpp qui porte le même nom que votre application. Par exemple, le fichier source de l’application principale pour MyProject est MyProject.cpp.

  3. Recherchez le constructeur de votre application principale. Par exemple, si votre projet est MyProject, le constructeur est CMyProjectApp::CMyProjectApp().

  4. Ajoutez la ligne de code suivante à votre constructeur.

    m_dwRestartManagerSupportFlags = AFX_RESTART_MANAGER_SUPPORT_ALL_ASPECTS;
  1. Assurez-vous que la méthode InitInstance de votre application appelle sa méthode InitInstance parente : CWinApp::InitInstance ou CWinAppEx::InitInstance. La InitInstance méthode est chargée de case activée le paramètre m_dwRestartManagerSupportFlags.

  2. Compilez et exécutez votre application.

Voir aussi

CDataRecoveryHandler, classe
CWinApp ::m_dwRestartManagerSupportFlags
CWinApp, classe
CWinApp ::m_nAutosaveInterval
CDocument ::OnDocumentEvent