Share via


Funzione RestartDialogEx (shlobj_core.h)

[Questa funzione è disponibile tramite Windows XP Service Pack 2 (SP2) e Windows Server 2003. Potrebbe essere modificato o non disponibile nelle versioni successive di Windows.]

Visualizza una finestra di dialogo che chiede all'utente di riavviare Windows. Quando l'utente fa clic sul pulsante, la funzione chiama ExitWindowsEx per tentare di riavviare Windows.

Sintassi

int RestartDialogEx(
  [in, optional] HWND   hwnd,
  [in, optional] PCWSTR pszPrompt,
                 DWORD  dwReturn,
                 DWORD  dwReasonCode
);

Parametri

[in, optional] hwnd

Tipo: HWND

Handle per la finestra padre.

[in, optional] pszPrompt

Tipo: PCWSTR

Stringa con terminazione Null contenente il testo visualizzato nella finestra di dialogo per richiedere all'utente.

dwReturn

Tipo: DWORD

Flag che specificano il tipo di arresto.

Questo parametro deve includere uno dei valori seguenti.

EWX_LOGOFF

Arresta tutti i processi in esecuzione nel contesto di sicurezza del processo che ha chiamato questa funzione. Quindi disconnette l'utente.

EWX_POWEROFF

Arresta il sistema e spegne l'alimentazione. Il sistema deve supportare la funzionalità di spegnimento. Il processo chiamante deve avere il privilegio SE_SHUTDOWN_NAME . Per altre informazioni, vedere ExitWindowsEx.

EWX_REBOOT

Arresta il sistema e quindi riavvia il sistema. Il processo chiamante deve avere il privilegio SE_SHUTDOWN_NAME. Per altre informazioni, vedere ExitWindowsEx.

EWX_SHUTDOWN

Arresta il sistema a un punto in cui è sicuro spegnere l'alimentazione. A questo punto, tutti i buffer di file sono stati scaricati su disco e tutti i processi in esecuzione sono stati arrestati. Se il sistema supporta la funzionalità di spegnimento, viene disattivata anche l'alimentazione. Il processo chiamante deve avere il privilegio SE_SHUTDOWN_NAME. Per altre informazioni, vedere ExitWindowsEx.

Questo parametro può facoltativamente includere i valori seguenti.

EWX_FORCE

Forza l'interruzione dei processi. Quando questo flag è impostato, il sistema non invia i messaggi WM_QUERYENDSESSION e WM_ENDSESSION . Ciò può causare la perdita di dati da parte delle applicazioni. Pertanto, è consigliabile usare questo flag solo in caso di emergenza.

EWX_FORCEIFHUNG

Forza i processi a terminare se non rispondono al messaggio di WM_QUERYENDSESSION o di WM_ENDSESSION . Questo flag viene ignorato se viene usato EWX_FORCE.

dwReasonCode

Tipo: DWORD

Windows XP:Specifica il motivo dell'avvio dell'arresto. Per altre informazioni, vedere Codici motivo arresto sistema.

Windows 2000: Questo parametro viene ignorato.

Valore restituito

Tipo: int

Restituisce l'identificatore del pulsante premuto per chiudere la finestra di dialogo.

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione shlobj_core.h (includere Shlobj.h)
Libreria Shell32.lib
DLL Shell32.dll (versione 5.0 o successiva)