public static ApiResponse RemoveAutostart() { bool ok; if (builder.Config.Tunable.UseLogonTask) { Logger.Debug("logon task mode selected"); ok = TaskSchdHandler.RemoveLogonTask(); } else { Logger.Debug("autostart mode selected"); ok = RegistryHandler.RemoveAutoStart(); } if (ok) { return(new ApiResponse() { StatusCode = StatusCode.Ok }); } else { return(new ApiResponse() { StatusCode = StatusCode.Err }); } }
public static ApiResponse AddAutostart(bool modified = false) { bool regOk = false; bool taskOk; if (builder.Config.Tunable.UseLogonTask) { Logger.Debug("logon task mode selected"); taskOk = TaskSchdHandler.CreateLogonTask(); if (taskOk) { regOk = RegistryHandler.RemoveAutoStart(); } if (regOk & taskOk) { return(new ApiResponse() { StatusCode = modified ? StatusCode.Modified : StatusCode.Ok, Message = "autostart entry set (logon task)", Details = $"registry removal success: {regOk}" }); } else { regOk = RegistryHandler.AddAutoStart(); return(new ApiResponse() { StatusCode = StatusCode.Err, Message = "failed setting logon task, trying to set autostart entry", Details = $"autostart entry set success: {regOk}" }); } } else { Logger.Debug("autostart mode selected"); taskOk = TaskSchdHandler.RemoveLogonTask(); regOk = RegistryHandler.AddAutoStart(); if (regOk) { return(new ApiResponse() { StatusCode = modified ? StatusCode.Modified : StatusCode.Ok, Message = "added autostart task successfully", Details = $"task removal success: {taskOk}" }); } } return(new ApiResponse() { StatusCode = StatusCode.Err, Message = "autostart error", Details = $"regOk: {regOk}, taskOk: {taskOk}" }); }