CWinApp::RegisterWithRestartManager
Rejestruje Menedżer ponownego uruchamiania aplikacji.
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
);
Parametry
Parametr |
Opis |
[w]bRegisterRecoveryCallback |
TRUEWskazuje, że to wystąpienie aplikacji korzysta z funkcji wywołania zwrotnego odzyskiwania; FALSEWskazuje, czy nie.Ramy wywołuje odzyskiwania funkcji wywołania zwrotnego, gdy aplikacja jest nieoczekiwanie.Aby uzyskać więcej informacji, zobacz CWinApp::ApplicationRecoveryCallback. |
[w]strRestartIdentifier |
Unikatowy ciąg, który identyfikuje wystąpienie Menedżer ponownego uruchamiania.Identyfikator menedżera ponownego uruchomienia jest unikatowy dla każdego wystąpienia aplikacji. |
[w]pwzCommandLineArgs |
Ciąg, który zawiera wszelkie dodatkowe argumenty z wiersza polecenia. |
[w]dwRestartFlags |
Opcjonalne flagi Menedżer ponownego uruchamiania.Aby uzyskać więcej informacji zobacz sekcję Spostrzeżenia. |
[w]pRecoveryCallback |
Funkcja wywołania zwrotnego.Ta funkcja musi podjąć LPVOID parametr jako danych wejściowych i powrotu DWORD.Jest to domyślna funkcja wywołania zwrotnego odzyskiwania CWinApp::ApplicationRecoveryCallback. |
[w]lpvParam |
Parametr wejściowy odzyskiwania funkcji wywołania zwrotnego.Aby uzyskać więcej informacji, zobacz CWinApp::ApplicationRecoveryCallback. |
[w]dwPingInterval |
Długość czas oczekiwania menedżera ponownego uruchomienia funkcji wywołania zwrotnego odzyskiwania powrócić.Ten parametr jest w milisekundach. |
[w]dwCallbackFlags |
Flagi przekazywane do funkcji wywołania zwrotnego odzyskiwania.Zarezerwowane do użytku w przyszłości. |
Wartość zwracana
S_OKJeśli metoda jest pomyślne; w przeciwnym razie kod błędu.
Uwagi
Jeśli aplikacja używa Domyślna implementacja MFC autozapisywanie plików, należy używać prostych wersję RegisterWithRestartManager.Użyj wersji złożonych RegisterWithRestartManager , jeśli chcesz dostosować zachowanie autozapisywanie aplikacji.
Jeśli wywołanie tej metody z pusty ciąg dla strRestartIdentifier, RegisterWithRestartManager tworzy ciągu identyfikator unikatowy dla tego wystąpienia ponownego uruchomienia Menedżera.
Gdy aplikacja jest nieoczekiwanie, Menedżer ponownego uruchamiania uruchamia ponownie aplikację z wiersza polecenia i zawiera unikatowy identyfikator jako opcjonalny argument ponownie.W tym scenariuszu wywołuje ramach RegisterWithRestartManager dwa razy.Pierwsze wywołanie pochodzi z CWinApp::InitInstance z identyfikatora ciąg pusty ciąg.Następnie metoda CWinApp::ProcessShellCommand wywołania RegisterWithRestartManager z identyfikatorem unikatowy ponownego uruchomienia.
Po zarejestrowaniu wniosku o ponowne uruchomienie Menedżera Menedżer ponownego uruchamiania monitoruje aplikacji.Jeśli aplikacja jest nieoczekiwanie, Menedżer ponownego uruchamiania wywołuje funkcję wywołania zwrotnego odzyskiwania podczas procesu zamknięty.Uruchom ponownie czeka Menedżera dwPingInterval odpowiedź z funkcji wywołania zwrotnego odzyskiwania.Jeśli funkcja wywołania zwrotnego odzyskiwania nie odpowie w tej chwili, bez wykonywania funkcji wywołania zwrotnego odzyskiwania kończy pracę aplikacji.
Domyślnie dwRestartFlags nie są obsługiwane, ale są dostarczane do wykorzystania w przyszłości.Możliwe wartości dla dwRestartFlags są następujące:
RESTART_NO_CRASH
RESTART_NO_HANG
RESTART_NO_PATCH
RESTART_NO_REBOOT
Wymagania
Nagłówek: afxwin.h
Zobacz też
Informacje
CWinApp::SupportsRestartManager