Compartilhar via


Como adicionar suporte ao gerenciador de reinicialização

O gerenciador de reinicialização é um recurso adicionado a Visual Studio para Windows Vista. O gerenciador de reinicialização adiciona suporte para seu aplicativo se fechar inesperadamente ou reiniciado. O comportamento do gerenciador de reinicialização depende do tipo de seu aplicativo. Se seu aplicativo for um publicador do documento, o gerenciador de reinicialização habilitou o aplicativo salvar o estado automaticamente e o conteúdo de todos os documentos abertos e reinicie o aplicativo depois de um bloqueio inesperado. Se seu aplicativo não é um publicador do documento, o gerenciador de reinicialização reiniciará o aplicativo, mas não é possível salvar o estado do aplicativo por padrão.

Após a reinicialização, o aplicativo exibe uma caixa de diálogo tarefa se o aplicativo for Unicode. Se for um aplicativo ANSI, o aplicativo exibe uma caixa de mensagem do windows. Neste momento, o usuário pode escolher restaurar os documentos automaticamente salvos. Se o usuário não restaura os documentos automaticamente salvos, o gerenciador de reinicialização descarta os arquivos temporários.

Dica

Você pode substituir o comportamento padrão do gerenciador de reinicialização para salvar dados e reinicie o aplicativo.

Por padrão, os aplicativos MFC criados usando o assistente de projeto em Visual Studio dão suporte ao gerenciador de reinicialização quando os aplicativos são executados em um computador que tenha Windows Vista. Se você não quiser que o seu aplicativo oferecer suporte ao gerenciador de reinicialização, você pode desabilitar o gerenciador de reinicialização no assistente de projeto.

Para adicionar suporte para o gerenciador de reinicialização a um aplicativo existente

  1. Abrir um aplicativo existente MFC em Visual Studio.

  2. Abra o arquivo de origem para seu aplicativo principal. Por padrão este é o arquivo .cpp que tem o mesmo nome do aplicativo. Por exemplo, o arquivo de origem do aplicativo principal para MyProject é MyProject.cpp.

  3. Localize o construtor para seu aplicativo principal. Por exemplo, se o projeto é MyProject, o construtor é CMyProjectApp::CMyProjectApp().

  4. Adicione a seguinte linha de código ao construtor.

    m_dwRestartManagerSupportFlags = AFX_RESTART_MANAGER_SUPPORT_ALL_ASPECTS;
    
  5. Verifique se o método de [InitInstance] de seus o aplicativo chama seu método pai de InitInstance : CWinApp::InitInstance ou CWinAppEx::InitInstance. O método de InitInstance é responsável para verificar o parâmetro de m_dwRestartManagerSupportFlags .

  6. Compile e execute o aplicativo.

Consulte também

Referência

Classe CDataRecoveryHandler

CWinApp::m_dwRestartManagerSupportFlags

Classe de CWinApp

CWinApp::m_nAutosaveInterval

CDocument::OnDocumentEvent