CWinApp::RegisterWithRestartManager

Registra o aplicativo com o gerenciador de configuração.

virtual HRESULT RegisterWithRestartManager(
   BOOL bRegisterRecoveryCallback,
   const CString &strRestartIdentifier
);

virtual HRESULT RegisterWithRestartManager(
   LPCWSTR pwzCommandLineArgs,
   DWORD dwRestartFlags,
   APPLICATION_RECOVERY_CALLBACK pRecoveryCallback,
   LPVOID lpvParam,
   DWORD dwPingInterval,
   DWORD dwCallbackFlags
);

Parâmetros

Parâmetro

Descrição

[in] bRegisterRecoveryCallback

TRUE indica que essa instância do aplicativo usa uma função de retorno de chamada de recuperação; FALSE indica que não faz.A estrutura chama a função de retorno de chamada de recuperação quando o aplicativo é encerrado inesperado.Para mais informações, consulte CWinApp::ApplicationRecoveryCallback.

[in] strRestartIdentifier

A cadeia de caracteres exclusiva que identifica essa instância do gerenciador de configuração.O identificador do gerenciador de configuração é exclusivo para cada instância de um aplicativo.

[in] pwzCommandLineArgs

Uma cadeia de caracteres que contém todos os argumentos adicionais de linha de comando.

[in] dwRestartFlags

Sinalizadores opcionais para o gerenciador de configuração.Para obter mais informações, consulte a seção comentários.

[in] pRecoveryCallback

A função de retorno de chamada de recuperação.Essa função deve receber um parâmetro de LPVOID como entrada e retornar DWORD.A função de retorno de chamada padrão de recuperação é CWinApp::ApplicationRecoveryCallback.

[in] lpvParam

O parâmetro de entrada para a função de retorno de chamada de recuperação.Para mais informações, consulte CWinApp::ApplicationRecoveryCallback.

[in] dwPingInterval

O período de tempo que o gerenciador de reinicialização espera a função de retorno de chamada de recuperação para retornar.Este parâmetro realiza-se em milissegundos.

[in] dwCallbackFlags

Sinalizadores passados à função de retorno de chamada de recuperação.Reservado para uso futuro.

Valor de retorno

S_OK se o método for bem-sucedida; se não um código de erro.

Comentários

Se seu aplicativo usa a implementação MFC de padrão para arquivos autosaving, você deve usar a versão simples de RegisterWithRestartManager.Use a versão complexa de RegisterWithRestartManager se você desejar personalizar o comportamento de autosave do seu aplicativo.

Se você chamar esse método com uma cadeia de caracteres vazia para strRestartIdentifier, RegisterWithRestartManager cria uma cadeia de caracteres identificador exclusivo para essa instância do gerenciador de configuração.

Quando um aplicativo é encerrado inesperadamente, o gerenciador de reinicialização do aplicativo a partir de linha de comando e fornece o identificador exclusivo de reinicialização como um argumento opcional.Em esse cenário, a estrutura chama RegisterWithRestartManager duas vezes.A primeira chamada vem de CWinApp::InitInstance com uma cadeia de caracteres vazia para o identificador de cadeia de caracteres.Em seguida, o método chama CWinApp::ProcessShellCommandRegisterWithRestartManager com o identificador exclusivo de configuração.

Depois que você registra um aplicativo com o gerenciador de reinicialização, o gerenciador de reinicialização monitora o aplicativo.Se o aplicativo será encerrado inesperadamente, o gerenciador de reinicialização chama a função de retorno de chamada de recuperação durante o processo fechado.O gerenciador de reinicialização dwPingInterval espera por uma resposta da função de retorno de chamada de recuperação.Se a função de retorno de chamada de recuperação não responde dentro de esse momento, o aplicativo será encerrado sem executar a função de retorno de chamada de recuperação.

Por padrão, os dwRestartFlags não são suportados mas são fornecidos para uso futuro.Os valores possíveis para dwRestartFlags são:

  • RESTART_NO_CRASH

  • RESTART_NO_HANG

  • RESTART_NO_PATCH

  • RESTART_NO_REBOOT

Requisitos

Cabeçalho: afxwin.h

Consulte também

Referência

Classe de CWinApp

Gráfico de hierarquia

CWinApp::SupportsRestartManager

CWinApp::ApplicationRecoveryCallback

Classe de CDataRecoveryHandler