<Return[E]><Top>

ExitWindowsEx

Declare Function Api_ExitWindowsEx& Lib "user32" Alias "ExitWindowsEx" (ByVal uFlags&, ByVal dwReserved&)

Declare Function ExitWindowsEx Lib "user32" Alias "ExitWindowsEx" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long

現在のユーザーをログオフさせるか、システムをシャットダウンさせるか、システムをシャットダウンさせて再起動させるか、いずれかを行う。この関数は、すべてのアプリケーションへ WM_QUERYENDSESSION メッセージを送信して、それらのアプリケーションを終了できるかどうかを判断する。

パラメータ
uFlags
    シャットダウンのタイプを指定する。次の値のいずれかを指定する。

    値                                 

意味                                                                                                                                      

    EWX_LOGOFF

呼び出し側のプロセスのセキュリティコンテキストで実行されているすべてのプロセスを終了し、現在のユーザーを

 

ログオフさせる。

    EWX_POWEROFF

システムをシャットダウンした後、電源を切る。システムは、パワーオフ機能をサポートしていなければならない。

 

Windows NT/2000:呼び出し側のプロセスに、SE_SHUTDOWN_NAME 特権を割り当てておかなければなら

 

い。

    EWX_REBOOT

システムをシャットダウンした後、システムを再起動する。

 

Windows NT/2000:呼び出し側のプロセスに、SE_SHUTDOWN_NAME 特権を割り当てておかなければなら

 

い。

    EWX_SHUTDOWN

システムをシャットダウンして、電源を切っても安全な状態にする。すべてのバッファをディスクへフラッシュし

 

(バッファの内容をディスクに書き込み)、動作していたすべてのプロセスを停止する。

 

Windows NT/2000:呼び出し側のプロセスに、SE_SHUTDOWN_NAME 特権を割り当てておかなければなら

 

ない。

    このパラメータで、オプションで次の値を指定することもできる。

    値                                 

意味                                                                                                                                      

    EWX_FORCE

プロセスを強制的に終了させる。このフラグを指定すると、システムは、現在実行されているアプリケーションへ

 

WM_QUERYENDSESSION メッセージや WM_ENDSESSION メッセージを送信しない。

 

この結果、アプリケーションがデータを失う可能性もある。したがって、このフラグは、緊急時にのみ指定するこ

 

と。

    EWX_FORCEIFHUNG

Windows 2000:プロセスが WM_QUERYENDSESSION または WM_ENDSESSION メッセージに応答しない

 

場合、それらのプロセスを終了させる。EWX_FORCE フラグを指定すると、EWX_FORCEIFHUNG フラグは無

 

視される。

dwReserved
    予約されている。このパラメータは無視される。

 
戻り値
    関数が成功すると、0 以外の値が返る。
    関数が失敗すると、0 が返る。拡張エラー情報を取得するには、GetLastError 関数を使う。