diff --git a/ASUSWmi.cs b/ASUSWmi.cs index 3a72ef81..4347507e 100644 --- a/ASUSWmi.cs +++ b/ASUSWmi.cs @@ -183,7 +183,7 @@ public class ASUSWmi if (curve.Length != 16) return; if (curve.All(singleByte => singleByte == 0)) return; - Debug.WriteLine(BitConverter.ToString(curve)); + Logger.WriteLine("Fans" + ((device == 1)?"GPU":"CPU") + " " + BitConverter.ToString(curve)); if (device == 1) DeviceSet(DevsGPUFanCurve, curve); diff --git a/App.config b/App.config index 2116589c..0d099bd0 100644 --- a/App.config +++ b/App.config @@ -3,8 +3,8 @@ + + + - - - \ No newline at end of file diff --git a/GHelper.csproj b/GHelper.csproj index c54162c7..ecb29b71 100644 --- a/GHelper.csproj +++ b/GHelper.csproj @@ -2,7 +2,7 @@ WinExe - net7.0-windows8.0 + net7.0-windows10.0.17763.0 enable True enable @@ -11,7 +11,7 @@ GHelper.Program favicon.ico AnyCPU;x64 - 8.0 + 10.0.17763.0 GHelper x64 False diff --git a/Program.cs b/Program.cs index 1ce96261..ad9ab4eb 100644 --- a/Program.cs +++ b/Program.cs @@ -30,10 +30,28 @@ public class HardwareMonitor } catch { - Debug.WriteLine("Failed reading sensors"); + Logger.WriteLine("Failed reading sensors"); } } +} +public static class Logger +{ + public static void WriteLine(string logMessage) + { + var appPath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\GHelper"; + var logFile = appPath + "\\log.txt"; + + if (!Directory.Exists(appPath)) Directory.CreateDirectory(appPath); + + using (StreamWriter w = File.AppendText(logFile)) + { + Debug.WriteLine(logMessage); + w.WriteLine($"{DateTime.Now.ToUniversalTime()}: {logMessage}"); + } + + } + } namespace GHelper @@ -41,6 +59,7 @@ namespace GHelper static class Program { + // Native methods for sleep detection [DllImport("Powrprof.dll", SetLastError = true)] @@ -138,7 +157,7 @@ namespace GHelper private static int DeviceNotifyCallback(IntPtr context, int type, IntPtr setting) { - //Debug.WriteLine($"Power callback type: {type}"); + Logger.WriteLine($"Power callback {type}"); switch (type) { case PBT_APMRESUMEAUTOMATIC: @@ -146,7 +165,7 @@ namespace GHelper { // Fix for bugging buios on wake up Program.wmi.DeviceSet(ASUSWmi.PerformanceMode, (config.getConfig("performance_mode")+1) % 3); - Thread.Sleep(500); + Thread.Sleep(3000); SetAutoModes(); }); @@ -184,7 +203,7 @@ namespace GHelper } } catch { - Debug.WriteLine("Failed to get update"); + Logger.WriteLine("Failed to get update"); } } @@ -194,7 +213,7 @@ namespace GHelper { PowerLineStatus isPlugged = SystemInformation.PowerStatus.PowerLineStatus; - Debug.WriteLine(isPlugged.ToString()); + Logger.WriteLine("Power " + isPlugged.ToString()); settingsForm.SetBatteryChargeLimit(config.getConfig("charge_limit")); @@ -207,6 +226,7 @@ namespace GHelper private static void SystemEvents_PowerModeChanged(object sender, PowerModeChangedEventArgs e) { + Logger.WriteLine("Windows - Power Mode Changed"); SetAutoModes(); } @@ -223,7 +243,7 @@ namespace GHelper } catch { - Debug.WriteLine("Failed to run " + fileName); + Logger.WriteLine("Failed to run " + fileName); } @@ -300,7 +320,7 @@ namespace GHelper int EventID = int.Parse(e.NewEvent["EventID"].ToString()); - Debug.WriteLine(EventID); + Logger.WriteLine("WMI event "+EventID); switch (EventID) { diff --git a/Settings.cs b/Settings.cs index 37338e07..61cb8cab 100644 --- a/Settings.cs +++ b/Settings.cs @@ -3,6 +3,7 @@ using System.Diagnostics; using System.Drawing.Imaging; using System.Timers; + namespace GHelper { @@ -525,7 +526,7 @@ namespace GHelper Program.wmi.DeviceSet(ASUSWmi.ScreenOverdrive, overdrive); InitScreen(); - Debug.WriteLine(frequency); + Logger.WriteLine("Screen "+ frequency.ToString() + "Hz"); } @@ -559,7 +560,7 @@ namespace GHelper } catch { - Debug.WriteLine("Screen Overdrive not supported"); + Logger.WriteLine("Screen Overdrive not supported"); } button60Hz.FlatAppearance.BorderSize = buttonInactive; @@ -702,7 +703,7 @@ namespace GHelper Program.wmi.DeviceSet(ASUSWmi.PPT_TotalA1, limit_total); Program.wmi.DeviceSet(ASUSWmi.PPT_CPUB0, limit_cpu); - Debug.WriteLine(limit_total.ToString() + ", " + limit_cpu.ToString()); + Logger.WriteLine("PowerLimits "+limit_total.ToString() + ", " + limit_cpu.ToString()); } @@ -760,7 +761,7 @@ namespace GHelper Program.config.setConfig("performance_mode", PerformanceMode); Program.wmi.DeviceSet(ASUSWmi.PerformanceMode, PerformanceMode); - Debug.WriteLine("Perf:" + PerformanceMode); + Logger.WriteLine("PerfMode " + perfName + " "+ PerformanceMode); if (notify && (oldMode != PerformanceMode)) { diff --git a/Startup.cs b/Startup.cs index d610427e..598acd04 100644 --- a/Startup.cs +++ b/Startup.cs @@ -29,6 +29,7 @@ public class Startup td.Settings.StopIfGoingOnBatteries = false; td.Settings.DisallowStartIfOnBatteries = false; + td.Settings.ExecutionTimeLimit = TimeSpan.Zero; Debug.WriteLine(strExeFilePath); Debug.WriteLine(userId); @@ -36,9 +37,9 @@ public class Startup try { TaskService.Instance.RootFolder.RegisterTaskDefinition(taskName, td); - } catch + } catch (Exception e) { - MessageBox.Show("Can't schedule task", "Scheduler Error", MessageBoxButtons.OK); + MessageBox.Show(e.ToString(), "Scheduler Error", MessageBoxButtons.OK); } }