Freigeben über


CWinApp::RegisterWithRestartManager

Registriert die Anwendung mit dem Neustart-Manager.

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
);

Parameter

Parameter

Description

[in] bRegisterRecoveryCallback

TRUE gibt an, dass diese Instanz der Anwendung eine Wiederherstellungsrückruffunktion verwendet; FALSE gibt an, dass dies nicht der Fall ist.Das Framework ruft die Wiederherstellungsrückruffunktion der Anwendung automatisch unerwartet auf.Weitere Informationen finden Sie unter CWinApp::ApplicationRecoveryCallback.

[in] strRestartIdentifier

Die eindeutige Zeichenfolge, die diese Instanz des Neustartmanagers identifiziert.Der Neustartmanagerbezeichner ist für jede Instanz einer Anwendung eindeutig.

[in] pwzCommandLineArgs

Eine Zeichenfolge, die zusätzliche Argumente in der Befehlszeile enthält.

[in] dwRestartFlags

Optionale Flags für den Neustart-Manager.Weitere Informationen finden Sie im Abschnitt "Hinweise".

[in] pRecoveryCallback

Die Wiederherstellungsrückruffunktion.Diese Funktion muss einen LPVOID-Parameter als Eingabe verwenden und DWORD zurückgeben.Die standardmäßige Wiederherstellungsrückruffunktion ist CWinApp::ApplicationRecoveryCallback.

[in] lpvParam

Der Eingabeparameter für die Wiederherstellungsrückruffunktion.Weitere Informationen finden Sie unter CWinApp::ApplicationRecoveryCallback.

[in] dwPingInterval

Die Zeitspanne diese vom Neustart-Manager wartet auf die Wiederherstellungsrückruffunktion, um zurückzukehren.Dieser Parameter ist in Millisekunden.

[in] dwCallbackFlags

Flags an die Wiederherstellungsrückruffunktion.Für die zukünftige Verwendung reserviert.

Rückgabewert

S_OK, wenn die Methode erfolgreich ist; andernfalls ein Fehlercode.

Hinweise

Wenn die Anwendung die Implementierung des Standards für MFC automatisch speichernde Dateien verwendet, sollten Sie die einfache Version von RegisterWithRestartManager verwenden.Verwenden Sie die komplexe Version von RegisterWithRestartManager, wenn Sie das Automatisch speichung Verhalten der Anwendung anpassen möchten.

Wenn Sie diese Methode mit einer leeren Zeichenfolge für strRestartIdentifier aufrufen, erstellt RegisterWithRestartManager eine Zeichenfolge des eindeutigen Bezeichners für diese Instanz des Neustartmanagers.

Wenn eine Anwendung unerwartet beendet wird, wird die Anwendung vom Neustart-Manager von der Befehlszeile neu und stellt den eindeutigen Neustartbezeichner als optionales Argument bereit.In diesem Szenario ruft das Framework RegisterWithRestartManager zweimal auf.Der erste Aufruf stammt CWinApp::InitInstance mit einer leeren Zeichenfolge für den Zeichenfolgenbezeichner.Anschließend ruft die Methode CWinApp::ProcessShellCommandRegisterWithRestartManager mit dem eindeutigen Neustartbezeichner auf.

Nachdem Sie eine Anwendung mit dem Neustart-Manager registrieren, überwacht die Anwendung vom Neustart-Manager.Wenn die wegen unerwartet, der Neustart-Manager die Wiederherstellungsrückruffunktion während des Prozesses Fahren aufruft.Der Neustart-Manager dwPingInterval wartet auf eine Antwort von der Wiederherstellungsrückruffunktion.Wenn die Wiederherstellungsrückruffunktion nicht innerhalb dieses Zeitraums reagiert, die wegen, ohne die Wiederherstellungsrückruffunktion auszuführen.

Standardmäßig werden die dwRestartFlags nicht unterstützt, sondern für die zukünftige Verwendung bereitgestellt.Die möglichen Werte für dwRestartFlags sind, wie folgt:

  • RESTART_NO_CRASH

  • RESTART_NO_HANG

  • RESTART_NO_PATCH

  • RESTART_NO_REBOOT

Anforderungen

Header: afxwin.h

Siehe auch

Referenz

CWinApp-Klasse

Hierarchien-Diagramm

CWinApp::SupportsRestartManager

CWinApp::ApplicationRecoveryCallback

CDataRecoveryHandler-Klasse