SystemEvents.SessionEnding イベントとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > SystemEvents.SessionEnding イベントの意味・解説 

SystemEvents.SessionEnding イベント

ユーザーシステムからログオフようとした場合、またはシステムシャットダウンようとした場合発生します

名前空間: Microsoft.Win32
アセンブリ: System (system.dll 内)
構文構文

Public Shared Event SessionEnding
 As SessionEndingEventHandler
Dim handler As SessionEndingEventHandler

AddHandler SystemEvents.SessionEnding, handler
public static event SessionEndingEventHandler
 SessionEnding
public:
static event SessionEndingEventHandler^ SessionEnding {
    void add (SessionEndingEventHandler^ value);
    void remove (SessionEndingEventHandler^ value);
}
/** @event */
public static void add_SessionEnding
 (SessionEndingEventHandler value)

/** @event */
public static void remove_SessionEnding
 (SessionEndingEventHandler value)
JScript では、イベント使用できますが、新規に宣言することはできません。
例外例外
解説解説
使用例使用例

確実な方法WndProc 関数オーバーライドすることにより、フォーム内で WM_QUERYENDSESSIONトラップする方法次のコード例示します

Private Shared WM_QUERYENDSESSION As
 Integer = &H11
 Private Shared systemShutdown As
 Boolean = False
 Protected Overrides Sub
 WndProc(ByRef m As System.Windows.Forms.Message)
     If m.Msg = WM_QUERYENDSESSION Then
         MessageBox.Show("queryendsession: this is a logoff, shutdown,
 or reboot")
         systemShutdown = True
     End If
     ' If this is WM_QUERYENDSESSION, the closing event should be raised
 in the base WndProc.
     MyBase.WndProc(m)
 End Sub 'WndProc 
 Private Sub Form1_Closing(ByVal
 sender As System.Object, ByVal e As
 System.ComponentModel.CancelEventArgs) Handles MyBase.Closing
     If (systemShutdown) Then
     ' Reset the variable because the user might cancel the shutdown.
         systemShutdown = False
         If (DialogResult.Yes = _
                 MessageBox.Show("My application",
 "Do you want to save your work before logging off?",
 MessageBoxButtons.YesNo)) Then
                 e.Cancel = True
         Else
                 e.Cancel = False
         End If
     End If
 End Sub
private static int WM_QUERYENDSESSION
 = 0x11;
private static bool systemShutdown
 = false;
protected override void WndProc(ref System.Windows.Forms.Message
 m)
{
    if (m.Msg==WM_QUERYENDSESSION)
    {
        MessageBox.Show("queryendsession: this is a logoff,
 shutdown, or reboot");
        systemShutdown = true;
    }

    // If this is WM_QUERYENDSESSION, the closing event should be
    // raised in the base WndProc.
    base.WndProc(m);

} //WndProc 

private void Form1_Closing(
    System.Object sender, 
    System.ComponentModel.CancelEventArgs e)
{
    if (systemShutdown)
        // Reset the variable because the user might cancel the 
        // shutdown.
    {
        systemShutdown = false;
        if (DialogResult.Yes==MessageBox.Show("My application",
 
            "Do you want to save your work before logging off?", 
            MessageBoxButtons.YesNo))
        {
            e.Cancel = true;
        }
        else
        {
            e.Cancel = false;
        }
    }
}
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
SystemEvents クラス
SystemEvents メンバ
Microsoft.Win32 名前空間
SessionEndingEventArgs クラス
SessionEndingEventHandler デリゲート
SessionEndReasons 列挙



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「SystemEvents.SessionEnding イベント」の関連用語


SystemEvents.SessionEnding イベントのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



SystemEvents.SessionEnding イベントのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS