internal EventTrigger(V2Interop.ITrigger iTrigger) : base(iTrigger) { }
internal static V2Interop.IRegisteredTask GetTask(V2Interop.ITaskService iSvc, string name) { V2Interop.ITaskFolder fld = null; try { fld = iSvc.GetFolder("\\"); return fld.GetTask(name); } catch { return null; } finally { if (fld != null) Marshal.ReleaseComObject(fld); } }
internal virtual void Bind(V2Interop.ITaskDefinition iTaskDef) { V2Interop.IActionCollection iActions = iTaskDef.Actions; switch (this.GetType().Name) { case "ComHandlerAction": iAction = iActions.Create(TaskActionType.ComHandler); break; case "ExecAction": iAction = iActions.Create(TaskActionType.Execute); break; case "EmailAction": iAction = iActions.Create(TaskActionType.SendEmail); break; case "ShowMessageAction": iAction = iActions.Create(TaskActionType.ShowMessage); break; default: throw new ArgumentException(); } Marshal.ReleaseComObject(iActions); foreach (string key in unboundValues.Keys) { try { iAction.GetType().InvokeMember(key, System.Reflection.BindingFlags.SetProperty, null, iAction, new object[] { unboundValues[key] }); } catch (System.Reflection.TargetInvocationException tie) { throw tie.InnerException; } catch { } } unboundValues.Clear(); }
internal RunningTask(TaskService svc, V2Interop.IRegisteredTask iTask, V2Interop.IRunningTask iRunningTask) : base(svc, iTask) { v2RunningTask = iRunningTask; }
internal void Bind(V2Interop.ITaskNamedValueCollection iTaskNamedValueCollection) { v2Coll = iTaskNamedValueCollection; v2Coll.Clear(); foreach (var item in unboundDict) v2Coll.Create(item.Key, item.Value); }
internal MonthlyTrigger(V2Interop.ITrigger iTrigger) : base(iTrigger) { }
internal IdleSettings(V2Interop.IIdleSettings iSettings) { v2Settings = iSettings; }
internal SessionStateChangeTrigger(V2Interop.ITrigger iTrigger) : base(iTrigger) { }
internal TimeTrigger(V2Interop.ITrigger iTrigger) : base(iTrigger) { }
internal ShowMessageAction(V2Interop.IShowMessageAction action) { iAction = action; }
internal RegistrationTrigger(V2Interop.ITrigger iTrigger) : base(iTrigger) { }
internal ExecAction(V2Interop.IExecAction action) { iAction = action; }
internal EmailAction(V2Interop.IEmailAction action) { iAction = action; }
internal ComHandlerAction(V2Interop.IComHandlerAction action) { iAction = action; }
internal IdleTrigger(V2Interop.ITrigger iTrigger) : base(iTrigger) { }
internal Trigger(V2Interop.ITrigger iTrigger) { v2Trigger = iTrigger; this.ttype = iTrigger.Type; if (string.IsNullOrEmpty(v2Trigger.StartBoundary)) this.StartBoundary = DateTime.SpecifyKind(DateTime.Now, DateTimeKind.Local); }
internal LogonTrigger(V2Interop.ITrigger iTrigger) : base(iTrigger) { }
internal BootTrigger(V2Interop.ITrigger iTrigger) : base(iTrigger) { }
internal TaskPrincipal(V2Interop.IPrincipal iPrincipal) { v2Principal = iPrincipal; }
internal static Trigger CreateTrigger(V2Interop.ITrigger iTrigger) { switch (iTrigger.Type) { case TaskTriggerType.Boot: return new BootTrigger((V2Interop.IBootTrigger)iTrigger); case TaskTriggerType.Daily: return new DailyTrigger((V2Interop.IDailyTrigger)iTrigger); case TaskTriggerType.Event: return new EventTrigger((V2Interop.IEventTrigger)iTrigger); case TaskTriggerType.Idle: return new IdleTrigger((V2Interop.IIdleTrigger)iTrigger); case TaskTriggerType.Logon: return new LogonTrigger((V2Interop.ILogonTrigger)iTrigger); case TaskTriggerType.Monthly: return new MonthlyTrigger((V2Interop.IMonthlyTrigger)iTrigger); case TaskTriggerType.MonthlyDOW: return new MonthlyDOWTrigger((V2Interop.IMonthlyDOWTrigger)iTrigger); case TaskTriggerType.Registration: return new RegistrationTrigger((V2Interop.IRegistrationTrigger)iTrigger); case TaskTriggerType.SessionStateChange: return new SessionStateChangeTrigger((V2Interop.ISessionStateChangeTrigger)iTrigger); case TaskTriggerType.Time: return new TimeTrigger((V2Interop.ITimeTrigger)iTrigger); case TaskTriggerType.Weekly: return new WeeklyTrigger((V2Interop.IWeeklyTrigger)iTrigger); default: break; } return null; }
internal NetworkSettings(V2Interop.INetworkSettings iSettings) { v2Settings = iSettings; }
internal virtual void Bind(V2Interop.ITaskDefinition iTaskDef) { V2Interop.ITriggerCollection iTriggers = iTaskDef.Triggers; v2Trigger = iTriggers.Create(ttype); Marshal.ReleaseComObject(iTriggers); foreach (string key in unboundValues.Keys) { try { object o = unboundValues[key]; CheckBindValue(key, ref o); v2Trigger.GetType().InvokeMember(key, System.Reflection.BindingFlags.SetProperty, null, v2Trigger, new object[] { o }); } catch (System.Reflection.TargetInvocationException tie) { throw tie.InnerException; } catch { } } unboundValues.Clear(); unboundValues = null; this.repititionPattern = new RepetitionPattern(this); this.repititionPattern.Bind(); }
internal TaskDefinition(V2Interop.ITaskDefinition iDef) { v2Def = iDef; }
internal WeeklyTrigger(V2Interop.ITrigger iTrigger) : base(iTrigger) { }
internal NamedValueCollection(V2Interop.ITaskNamedValueCollection iColl) { v2Coll = iColl; }
internal DailyTrigger(V2Interop.ITrigger iTrigger) : base(iTrigger) { }
internal TaskFolder(TaskService svc, V2Interop.ITaskFolder iFldr) { this.TaskService = svc; v2Folder = iFldr; }
/// <summary> /// Creates a specialized class from a defined interface. /// </summary> /// <param name="iAction">Version 2.0 Action interface.</param> /// <returns>Specialized action class</returns> internal static Action CreateAction(V2Interop.IAction iAction) { switch (iAction.Type) { case TaskActionType.ComHandler: return new ComHandlerAction((V2Interop.IComHandlerAction)iAction); case TaskActionType.SendEmail: return new EmailAction((V2Interop.IEmailAction)iAction); case TaskActionType.ShowMessage: return new ShowMessageAction((V2Interop.IShowMessageAction)iAction); case TaskActionType.Execute: default: return new ExecAction((V2Interop.IExecAction)iAction); } }