Cómo: Agregar compatibilidad con el Administrador de reinicio

El Administrador de reinicio es una característica agregada a Visual Studio para Windows Vista. El Administrador de reinicio agrega compatibilidad para una aplicación si se cierra o se reinicia inesperadamente. El comportamiento del Administrador de reinicio depende del tipo de aplicación. Si la aplicación es un editor de documentos, el Administrador de reinicio permite que la aplicación guarde automáticamente el estado y el contenido de cualquier documento abierto y reinicia la aplicación después de que se cierre de forma inesperada. Si la aplicación no es un editor de documentos, el Administrador de reinicio reinicia la aplicación, pero no puede guardar el estado de la aplicación de forma predeterminada.

Después del reinicio, la aplicación muestra un cuadro de diálogo de tarea si la aplicación es Unicode. Si es una aplicación ANSI, la aplicación muestra un cuadro de mensaje de Windows. En este punto, el usuario decide si se deben restaurar los documentos guardados automáticamente. Si el usuario no restaura los documentos guardados automáticamente, el Administrador de reinicio descarta los archivos temporales.

Nota

Puede reemplazar el comportamiento predeterminado del Administrador de reinicio para guardar los datos y reiniciar la aplicación.

De forma predeterminada, las aplicaciones MFC creadas con el asistente para proyectos de Visual Studio admiten el Administrador de reinicio cuando se ejecutan en un equipo que tiene Windows Vista. Si no desea que la aplicación admita el Administrador de reinicio, puede deshabilitarlo en el asistente para nuevo proyecto.

Para agregar compatibilidad con el Administrador de reinicio a una aplicación existente

  1. Abra una aplicación MFC existente en Visual Studio.

  2. Abra el archivo de origen de la aplicación principal. De forma predeterminada, es el archivo .cpp que tiene el mismo nombre que la aplicación. Por ejemplo, el archivo de origen de la aplicación principal de MyProject es MyProject.cpp.

  3. Busque el constructor de la aplicación principal. Por ejemplo, si el proyecto es MyProject, el constructor es CMyProjectApp::CMyProjectApp().

  4. Agregue la siguiente línea de código al constructor.

    m_dwRestartManagerSupportFlags = AFX_RESTART_MANAGER_SUPPORT_ALL_ASPECTS;
    
  5. Asegúrese de que el método [InitInstance] de la aplicación llama a su método primario InitInstance: CWinApp::InitInstance o CWinAppEx::InitInstance. El método InitInstance es responsable de comprobar el parámetro m_dwRestartManagerSupportFlags.

  6. Compile y ejecute la aplicación.

Vea también

Referencia

CDataRecoveryHandler Class

CWinApp::m_dwRestartManagerSupportFlags

CWinApp Class

CWinApp::m_nAutosaveInterval

CDocument::OnDocumentEvent