SessionStateChangeTrigger Class

Triggers tasks for console connect or disconnect, remote connect or disconnect, or workstation lock or unlock notifications.


Only available for Task Scheduler 2.0 on Windows Vista or Windows Server 2003 and later.


Namespace: Microsoft.Win32.TaskScheduler
Assembly: Microsoft.Win32.TaskScheduler (in Microsoft.Win32.TaskScheduler.dll) Version: 2.11.0
[XmlTypeAttribute(IncludeInSchema = false)]
public sealed class SessionStateChangeTrigger : Trigger, 
	ITriggerDelay, ITriggerUserId
Object    Trigger    SessionStateChangeTrigger
ITriggerDelay, ITriggerUserId


The SessionStateChangeTrigger will fire after six different system events: connecting or disconnecting locally or remotely, or locking or unlocking the session.


new SessionStateChangeTrigger { StateChange = TaskSessionStateChangeType.ConsoleConnect, UserId = "joe" };
new SessionStateChangeTrigger { StateChange = TaskSessionStateChangeType.ConsoleDisconnect };
new SessionStateChangeTrigger { StateChange = TaskSessionStateChangeType.RemoteConnect };
new SessionStateChangeTrigger { StateChange = TaskSessionStateChangeType.RemoteDisconnect };
new SessionStateChangeTrigger { StateChange = TaskSessionStateChangeType.SessionLock, UserId = "joe" };
new SessionStateChangeTrigger { StateChange = TaskSessionStateChangeType.SessionUnlock };


SessionStateChangeTriggerCreates an unbound instance of a SessionStateChangeTrigger.
SessionStateChangeTrigger(TaskSessionStateChangeType, String)Initializes a new instance of the SessionStateChangeTrigger class.


DelayGets or sets a value that indicates the amount of time between when the system is booted and when the task is started.
EnabledGets or sets a Boolean value that indicates whether the trigger is enabled.
(Inherited from Trigger)
EndBoundary Gets or sets the date and time when the trigger is deactivated. The trigger cannot start the task after it is deactivated.


While the maximum value for this property is MaxValue, the Windows Task Scheduler management application that is part of the OS will fail if this value is greater than December 31, 9998.

(Inherited from Trigger)
ExecutionTimeLimit Gets or sets the maximum amount of time that the task launched by this trigger is allowed to run. Not available with Task Scheduler 1.0.
(Inherited from Trigger)
IdGets or sets the identifier for the trigger. Cannot set with Task Scheduler 1.0.
(Inherited from Trigger)
Repetition Gets a RepetitionPattern instance that indicates how often the task is run and how long the repetition pattern is repeated after the task is started.
(Inherited from Trigger)
StartBoundaryGets or sets the date and time when the trigger is activated.
(Inherited from Trigger)
StateChangeGets or sets the kind of Terminal Server session change that would trigger a task launch.
TriggerTypeGets the type of the trigger.
(Inherited from Trigger)
UserId Gets or sets the user for the Terminal Server session. When a session state change is detected for this user, a task is started.


CheckBindValueChecks the bind value for any conversion.
(Inherited from Trigger)
CloneCreates a new Trigger that is an unbound copy of this instance.
(Inherited from Trigger)
CompareTo Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object.
(Inherited from Trigger)
CopyProperties Copies the properties from another Trigger the current instance. This will not copy any properties associated with any derived triggers except those supporting the ITriggerDelay interface.
(Overrides TriggerCopyProperties(Trigger))
DisposeReleases all resources used by this class.
(Inherited from Trigger)
Equals(Object)Determines whether the specified Object, is equal to this instance.
(Inherited from Trigger)
Equals(Trigger)Indicates whether the current object is equal to another object of the same type.
(Overrides TriggerEquals(Trigger))
FinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object)
GetHashCodeReturns a hash code for this instance.
(Inherited from Trigger)
GetTypeGets the Type of the current instance.
(Inherited from Object)
GetUnboundValueOrDefaultTGets the unbound value or a default.
(Inherited from Trigger)
MemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
OnNotifyPropertyChangedCalled when a property has changed to notify any attached elements.
(Inherited from Trigger)
SetRepetitionSets the repetition.
(Inherited from Trigger)
ToStringReturns a string representing this trigger.
(Inherited from Trigger)
ToString(CultureInfo)Returns a String that represents this trigger in a specific language.
(Inherited from Trigger)
V2GetTriggerStringGets the non-localized trigger string for V2 triggers.
(Overrides TriggerV2GetTriggerString)


PropertyChangedOccurs when a property value changes.
(Inherited from Trigger)


unboundValuesIn testing and may change. Do not use until officially introduced into library.
(Inherited from Trigger)

See Also