in Configurator/Base/Classes/ScheduledTask.cs [49:136]
public static bool TaskExists()
{
string path = Environment.GetFolderPath(Environment.SpecialFolder.System);
path = Path.Combine(path, "Tasks", "MySQL", "Installer", "CatalogUpdate");
// if (File.Exists(path))
// return XmlCheck(path);
string strJobId = "";
try
{
// ManagementObject mo = new ManagementObject(new ManagementPath("Win32_ScheduleObject"));
// ConnectionOptions conn = new ConnectionOptions();
// conn.EnablePrivileges = true;
// conn.Impersonation = System.Management.ImpersonationLevel.Impersonate;
// ManagementScope scope = new ManagementScope("root\\cimv2", conn);
//scope.Options.Impersonation = System.Management.ImpersonationLevel.Impersonate;
//scope.Options.EnablePrivileges = true;
//scope.Connect();
ManagementPath managementPath = new ManagementPath("Win32_ScheduledJob");
ObjectGetOptions objectGetOptions = new ObjectGetOptions();
ManagementClass classInstance = new ManagementClass(@"root\cimv2", "Win32_ScheduledJob", objectGetOptions);
object[] objectsIn = new object[7];
objectsIn[0] = "notepad.exe";
objectsIn[1] = "********140000.000000+480";
objectsIn[5] = true;
object outParams = classInstance.InvokeMethod("Create", objectsIn);
String response = "Creation of the process returned: " + outParams;
// DateTime dt = DateTime.Now.AddMinutes(1);
// ManagementClass classInstance = new ManagementClass("root\\CIMV2", "Win32_ScheduledJob", null);
// ManagementBaseObject inParams = classInstance.GetMethodParameters("Create");
// inParams["Command"] = "Notepad.exe";
// inParams["InteractWithDesktop"] = true;
// inParams["RunRepeatedly"] = false;
// inParams["DaysOfMonth"] = 0;
// inParams["DaysOfWeek"] = 0;
//// string s = dt.ToUniversalTime().ToString("yyyyMMddTHHmmss.fffK"); //."20101129135500.000000+330";;
// inParams["StartTime"] = "20140416141100.000000-300";
// ManagementBaseObject outParams =
// classInstance.InvokeMethod("Create", inParams, null);
// strJobId = outParams["JobId"].ToString();
// Console.WriteLine("Out parameters:");
// Console.WriteLine("JobId: " + outParams["JobId"]);
// Console.WriteLine("ReturnValue: " + outParams["ReturnValue"]);
}
catch (ManagementException err)
{
}
//return strJobId;
//var query = new ManagementObjectSearcher();
//query."SELECT * FROM Win32_ScheduledJob");
//var tasks = query.Get();
//foreach (var t in tasks)
//{
// foreach (var p in t.Properties)
// {
// string s = p.Name;
// }
//}
try
{
//ITaskService taskService = new TaskScheduler();
//taskService.Connect();
//ITaskFolder folder = taskService.GetFolder(@"\MySQL\Installer");
//IRegisteredTask task = folder.GetTask(@"CatalogUpdate");
//Marshal.ReleaseComObject(folder);
//Marshal.ReleaseComObject(task);
return true;
}
catch (FileNotFoundException)
{
return false;
}
// string output = Utilities.RunCommand("schtasks.exe", "/query");
// return output.Contains(TaskName);
}