using System.Security.Principal;
using Microsoft.Win32.TaskScheduler;
public static void Main()
RunRemoteTask("IT-01", new WindowsIdentity("matthewm@discdrive"), @"BayAlerts\\1750", null);
public static void RunRemoteTask(string server, WindowsIdentity user, string taskPath, string[] runParams)
WindowsImpersonationContext context = null;
context = user.Impersonate();
using (var ts = new TaskService(server))
var task = ts.GetTask(taskPath);
if (task == null) throw new InvalidOperationException();