SessionChangeDescription SessionChangeDescription SessionChangeDescription SessionChangeDescription Struct

Définition

Identifie la raison d'une modification de la session Terminal Server.Identifies the reason for a Terminal Services session change.

public value class SessionChangeDescription
public struct SessionChangeDescription
type SessionChangeDescription = struct
Public Structure SessionChangeDescription
Héritage
SessionChangeDescriptionSessionChangeDescriptionSessionChangeDescriptionSessionChangeDescription

Exemples

L’exemple de code suivant illustre l’utilisation de la SessionChangeDescription classe dans une implémentation de la OnSessionChange méthode dans une classe dérivée ServiceBase.The following code example shows the use of the SessionChangeDescription class in an implementation of the OnSessionChange method in a class derived from ServiceBase. Cet exemple de code fait partie d’un exemple plus complet fourni pour la ServiceBase classe.This code example is part of a larger example provided for the ServiceBase class.

        // Handle a session change notice
        protected override void OnSessionChange(SessionChangeDescription changeDescription)
        {
#if LOGEVENTS
            EventLog.WriteEntry("SimpleService.OnSessionChange", DateTime.Now.ToLongTimeString() +
                " - Session change notice received: " +
                changeDescription.Reason.ToString() + "  Session ID: " +
                changeDescription.SessionId.ToString());
#endif

            switch (changeDescription.Reason)
            {
                case SessionChangeReason.SessionLogon:
                    userCount += 1;
#if LOGEVENTS
                    EventLog.WriteEntry("SimpleService.OnSessionChange",
                        DateTime.Now.ToLongTimeString() +
                        " SessionLogon, total users: " +
                        userCount.ToString());
#endif
                    break;
                case SessionChangeReason.SessionLogoff:

                    userCount -= 1;
#if LOGEVENTS
                    EventLog.WriteEntry("SimpleService.OnSessionChange",
                        DateTime.Now.ToLongTimeString() +
                        " SessionLogoff, total users: " +
                        userCount.ToString());
#endif
                    break;
                case SessionChangeReason.RemoteConnect:
                    userCount += 1;
#if LOGEVENTS
                    EventLog.WriteEntry("SimpleService.OnSessionChange",
                        DateTime.Now.ToLongTimeString() +
                        " RemoteConnect, total users: " +
                        userCount.ToString());
#endif
                    break;
                case SessionChangeReason.RemoteDisconnect:
                    userCount -= 1;
#if LOGEVENTS
                    EventLog.WriteEntry("SimpleService.OnSessionChange",
                        DateTime.Now.ToLongTimeString() +
                        " RemoteDisconnect, total users: " +
                        userCount.ToString());
#endif
                    break;
                case SessionChangeReason.SessionLock:
#if LOGEVENTS
                    EventLog.WriteEntry("SimpleService.OnSessionChange",
                        DateTime.Now.ToLongTimeString() +
                        " SessionLock");
#endif
                    break;
                case SessionChangeReason.SessionUnlock:
#if LOGEVENTS
                    EventLog.WriteEntry("SimpleService.OnSessionChange",
                        DateTime.Now.ToLongTimeString() +
                        " SessionUnlock");
#endif
                    break;
                default:
                    break;
            }
        }
    ' Handle a session change notice
    Protected Overrides Sub OnSessionChange(ByVal changeDescription As SessionChangeDescription)
#If LOGEVENTS Then
        System.Diagnostics.EventLog.WriteEntry("SimpleService.OnSessionChange", DateTime.Now.ToLongTimeString() + " - Session change notice received: " + changeDescription.Reason.ToString() + "  Session ID: " + changeDescription.SessionId.ToString())
#End If

        Select Case changeDescription.Reason
            Case SessionChangeReason.SessionLogon
                userCount += 1
#If LOGEVENTS Then
                System.Diagnostics.EventLog.WriteEntry("SimpleService.OnSessionChange", DateTime.Now.ToLongTimeString() + " SessionLogon, total users: " + userCount.ToString())
#End If
            Case SessionChangeReason.SessionLogoff

                userCount -= 1
#If LOGEVENTS Then
                System.Diagnostics.EventLog.WriteEntry("SimpleService.OnSessionChange", DateTime.Now.ToLongTimeString() + " SessionLogoff, total users: " + userCount.ToString())
#End If
            Case SessionChangeReason.RemoteConnect
                userCount += 1
#If LOGEVENTS Then
                System.Diagnostics.EventLog.WriteEntry("SimpleService.OnSessionChange", DateTime.Now.ToLongTimeString() + " RemoteConnect, total users: " + userCount.ToString())
#End If
            Case SessionChangeReason.RemoteDisconnect
                userCount -= 1
#If LOGEVENTS Then
                System.Diagnostics.EventLog.WriteEntry("SimpleService.OnSessionChange", DateTime.Now.ToLongTimeString() + " RemoteDisconnect, total users: " + userCount.ToString())
#End If
            Case SessionChangeReason.SessionLock
#If LOGEVENTS Then
                System.Diagnostics.EventLog.WriteEntry("SimpleService.OnSessionChange", DateTime.Now.ToLongTimeString() + " SessionLock")
#End If
            Case SessionChangeReason.SessionUnlock
#If LOGEVENTS Then
                System.Diagnostics.EventLog.WriteEntry("SimpleService.OnSessionChange", DateTime.Now.ToLongTimeString() + " SessionUnlock")
#End If
            Case Else
        End Select

    End Sub 'OnSessionChange

Propriétés

Reason Reason Reason Reason

Obtient la raison de la modification de la session.Gets the reason for the session change.

SessionId SessionId SessionId SessionId

Obtient l'ID de session pour la session associée.Gets the session ID for the associated session.

Méthodes

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Détermine si l'objet spécifié est égal à la description de modification de la session en cours.Determines whether the specified object is equal to the current session change description.

Equals(SessionChangeDescription) Equals(SessionChangeDescription) Equals(SessionChangeDescription) Equals(SessionChangeDescription)

Détermine si la description de modification de la session spécifiée est égale à la description de modification de la session en cours.Determines whether the specified session change description is equal to the current session change description.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Obtient un code de hachage pour la description de modification de la session en cours.Gets a hash code for the current session change description.

Opérateurs

Equality(SessionChangeDescription, SessionChangeDescription) Equality(SessionChangeDescription, SessionChangeDescription) Equality(SessionChangeDescription, SessionChangeDescription) Equality(SessionChangeDescription, SessionChangeDescription)

Retourne une valeur indiquant si deux structures SessionChangeDescription sont égales.Returns a value indicating whether two SessionChangeDescription structures are equal.

Inequality(SessionChangeDescription, SessionChangeDescription) Inequality(SessionChangeDescription, SessionChangeDescription) Inequality(SessionChangeDescription, SessionChangeDescription) Inequality(SessionChangeDescription, SessionChangeDescription)

Retourne une valeur indiquant si deux structures SessionChangeDescription sont inégales.Returns a value indicating whether two SessionChangeDescription structures are not equal.

S’applique à