mirror of
https://github.com/jkocon/g-helper.git
synced 2026-02-23 13:00:52 +01:00
Compare commits
11 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8590d0301a | ||
|
|
8804d19567 | ||
|
|
57ce0631a3 | ||
|
|
b796f9f9d4 | ||
|
|
f39563fcdf | ||
|
|
853d0c231d | ||
|
|
df3324d641 | ||
|
|
75c90ee155 | ||
|
|
4015e0a7f7 | ||
|
|
2a82e41894 | ||
|
|
a5541dfe10 |
@@ -15,6 +15,7 @@ public class ASUSWmi
|
|||||||
public const uint UniversalControl = 0x00100021;
|
public const uint UniversalControl = 0x00100021;
|
||||||
public const int KB_Light_Up = 0xc4;
|
public const int KB_Light_Up = 0xc4;
|
||||||
public const int KB_Light_Down = 0xc5;
|
public const int KB_Light_Down = 0xc5;
|
||||||
|
public const int Touchpad_Toggle = 0x6B;
|
||||||
|
|
||||||
public const int ChargerMode = 0x0012006C;
|
public const int ChargerMode = 0x0012006C;
|
||||||
|
|
||||||
@@ -59,6 +60,13 @@ public class ASUSWmi
|
|||||||
public const int TUF_KB = 0x00100056;
|
public const int TUF_KB = 0x00100056;
|
||||||
public const int TUF_KB_STATE = 0x00100057;
|
public const int TUF_KB_STATE = 0x00100057;
|
||||||
|
|
||||||
|
public const int TabletState = 0x00060077;
|
||||||
|
|
||||||
|
public const int Tablet_Notebook = 0;
|
||||||
|
public const int Tablet_Tablet = 1;
|
||||||
|
public const int Tablet_Tent = 2;
|
||||||
|
public const int Tablet_Rotated = 3;
|
||||||
|
|
||||||
public const int PerformanceBalanced = 0;
|
public const int PerformanceBalanced = 0;
|
||||||
public const int PerformanceTurbo = 1;
|
public const int PerformanceTurbo = 1;
|
||||||
public const int PerformanceSilent = 2;
|
public const int PerformanceSilent = 2;
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
using Starlight.Communication;
|
using Starlight.Communication;
|
||||||
using System.Drawing.Drawing2D;
|
using System.Drawing.Drawing2D;
|
||||||
|
using System.Drawing.Text;
|
||||||
using System.Globalization;
|
using System.Globalization;
|
||||||
using System.Management;
|
using System.Management;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
@@ -343,11 +344,17 @@ namespace Starlight.AnimeMatrix
|
|||||||
public void PresentClock()
|
public void PresentClock()
|
||||||
{
|
{
|
||||||
int second = DateTime.Now.Second;
|
int second = DateTime.Now.Second;
|
||||||
|
string time;
|
||||||
|
|
||||||
if (CultureInfo.CurrentCulture.DateTimeFormat.ShortTimePattern.Contains("H"))
|
if (CultureInfo.CurrentCulture.DateTimeFormat.ShortTimePattern.Contains("H"))
|
||||||
PresentTextDiagonal(DateTime.Now.ToString(" H" + ((second % 2 == 0) ? ":" : " ") + "mm"));
|
time = DateTime.Now.ToString("H" + ((second % 2 == 0) ? ":" : " ") + "mm");
|
||||||
else
|
else
|
||||||
PresentTextDiagonal(DateTime.Now.ToString("h" + ((second % 2 == 0) ? ":" : " ") + "mmtt"));
|
time = DateTime.Now.ToString("h" + ((second % 2 == 0) ? ":" : " ") + "mmtt");
|
||||||
|
|
||||||
|
if (_model == AnimeType.GA401)
|
||||||
|
PresentText(time);
|
||||||
|
else
|
||||||
|
PresentTextDiagonal(time);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PresentText(string text1, string text2 = "")
|
public void PresentText(string text1, string text2 = "")
|
||||||
@@ -359,14 +366,14 @@ namespace Starlight.AnimeMatrix
|
|||||||
g.CompositingQuality = CompositingQuality.HighQuality;
|
g.CompositingQuality = CompositingQuality.HighQuality;
|
||||||
g.SmoothingMode = SmoothingMode.AntiAlias;
|
g.SmoothingMode = SmoothingMode.AntiAlias;
|
||||||
|
|
||||||
using (Font font = new Font("Arial", 24F, GraphicsUnit.Pixel))
|
using (Font font = new Font("Consolas", 24F, FontStyle.Regular, GraphicsUnit.Pixel))
|
||||||
{
|
{
|
||||||
SizeF textSize = g.MeasureString(text1, font);
|
SizeF textSize = g.MeasureString(text1, font);
|
||||||
g.DrawString(text1, font, Brushes.White, (MaxColumns * 3 - textSize.Width) + 3, -3);
|
g.DrawString(text1, font, Brushes.White, (MaxColumns * 3 - textSize.Width) + 3, -4);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (text2.Length > 0)
|
if (text2.Length > 0)
|
||||||
using (Font font = new Font("Arial", 18F, GraphicsUnit.Pixel))
|
using (Font font = new Font("Consolas", 18F, GraphicsUnit.Pixel))
|
||||||
{
|
{
|
||||||
SizeF textSize = g.MeasureString(text2, font);
|
SizeF textSize = g.MeasureString(text2, font);
|
||||||
g.DrawString(text2, font, Brushes.White, (MaxColumns * 3 - textSize.Width) + 1, 25);
|
g.DrawString(text2, font, Brushes.White, (MaxColumns * 3 - textSize.Width) + 1, 25);
|
||||||
@@ -437,6 +444,24 @@ namespace Starlight.AnimeMatrix
|
|||||||
|
|
||||||
Clear();
|
Clear();
|
||||||
|
|
||||||
|
|
||||||
|
InstalledFontCollection installedFontCollection = new InstalledFontCollection();
|
||||||
|
|
||||||
|
|
||||||
|
string familyName;
|
||||||
|
string familyList = "";
|
||||||
|
FontFamily[] fontFamilies;
|
||||||
|
// Get the array of FontFamily objects.
|
||||||
|
fontFamilies = installedFontCollection.Families;
|
||||||
|
|
||||||
|
int count = fontFamilies.Length;
|
||||||
|
for (int j = 0; j < count; ++j)
|
||||||
|
{
|
||||||
|
familyName = fontFamilies[j].Name;
|
||||||
|
familyList = familyList + familyName;
|
||||||
|
familyList = familyList + ", ";
|
||||||
|
}
|
||||||
|
|
||||||
int maxX = (int)Math.Sqrt(MaxRows * MaxRows + MaxColumns * MaxColumns);
|
int maxX = (int)Math.Sqrt(MaxRows * MaxRows + MaxColumns * MaxColumns);
|
||||||
|
|
||||||
using (Bitmap bmp = new Bitmap(maxX, MaxRows))
|
using (Bitmap bmp = new Bitmap(maxX, MaxRows))
|
||||||
@@ -446,10 +471,10 @@ namespace Starlight.AnimeMatrix
|
|||||||
g.CompositingQuality = CompositingQuality.HighQuality;
|
g.CompositingQuality = CompositingQuality.HighQuality;
|
||||||
g.SmoothingMode = SmoothingMode.AntiAlias;
|
g.SmoothingMode = SmoothingMode.AntiAlias;
|
||||||
|
|
||||||
using (Font font = new Font("Calibri", 13F, GraphicsUnit.Pixel))
|
using (Font font = new Font("Consolas", 13F, FontStyle.Regular, GraphicsUnit.Pixel))
|
||||||
{
|
{
|
||||||
SizeF textSize = g.MeasureString(text, font);
|
SizeF textSize = g.MeasureString(text, font);
|
||||||
g.DrawString(text, font, Brushes.White, 4, 0);
|
g.DrawString(text, font, Brushes.White, 4, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -166,7 +166,7 @@ namespace GHelper
|
|||||||
{
|
{
|
||||||
HidDevice[] HidDeviceList = HidDevices.Enumerate(0x0b05, deviceIds).ToArray();
|
HidDevice[] HidDeviceList = HidDevices.Enumerate(0x0b05, deviceIds).ToArray();
|
||||||
foreach (HidDevice device in HidDeviceList)
|
foreach (HidDevice device in HidDeviceList)
|
||||||
if (device.IsConnected
|
if (device.IsConnected
|
||||||
&& device.Capabilities.FeatureReportByteLength > 0
|
&& device.Capabilities.FeatureReportByteLength > 0
|
||||||
&& device.Capabilities.InputReportByteLength >= minInput) //
|
&& device.Capabilities.InputReportByteLength >= minInput) //
|
||||||
yield return device;
|
yield return device;
|
||||||
|
|||||||
@@ -16,7 +16,7 @@
|
|||||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||||
<ProduceReferenceAssembly>False</ProduceReferenceAssembly>
|
<ProduceReferenceAssembly>False</ProduceReferenceAssembly>
|
||||||
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
|
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
|
||||||
<AssemblyVersion>0.62</AssemblyVersion>
|
<AssemblyVersion>0.63</AssemblyVersion>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
|
||||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ public class AmdGpuControl : IGpuControl {
|
|||||||
|
|
||||||
public bool IsNvidia => false;
|
public bool IsNvidia => false;
|
||||||
|
|
||||||
|
public string FullName => _internalDiscreteAdapter!.AdapterName;
|
||||||
public AmdGpuControl() {
|
public AmdGpuControl() {
|
||||||
if (!Adl2.Load())
|
if (!Adl2.Load())
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -3,6 +3,7 @@
|
|||||||
public interface IGpuControl : IDisposable {
|
public interface IGpuControl : IDisposable {
|
||||||
bool IsNvidia { get; }
|
bool IsNvidia { get; }
|
||||||
bool IsValid { get; }
|
bool IsValid { get; }
|
||||||
|
public string FullName { get; }
|
||||||
int? GetCurrentTemperature();
|
int? GetCurrentTemperature();
|
||||||
int? GetGpuUse();
|
int? GetGpuUse();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,6 +51,7 @@ public static class HardwareControl
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
int? gpuUse = GpuControl?.GetGpuUse();
|
int? gpuUse = GpuControl?.GetGpuUse();
|
||||||
|
Logger.WriteLine("GPU usage: " + GpuControl?.FullName + " " + gpuUse + "%");
|
||||||
if (gpuUse is not null) return (int)gpuUse;
|
if (gpuUse is not null) return (int)gpuUse;
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
@@ -113,16 +114,12 @@ public static class HardwareControl
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public static bool IsUsedGPU(int threshold = 20)
|
public static bool IsUsedGPU(int threshold = 10)
|
||||||
{
|
{
|
||||||
int use = GetGpuUse();
|
if (GetGpuUse() > threshold)
|
||||||
Logger.WriteLine("GPU usage: " + use);
|
|
||||||
if (use > threshold)
|
|
||||||
{
|
{
|
||||||
Thread.Sleep(1000);
|
Thread.Sleep(1000);
|
||||||
use = GetGpuUse();
|
return (GetGpuUse() > threshold);
|
||||||
Logger.WriteLine("GPU usage: " + use);
|
|
||||||
return (use > threshold);
|
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
@@ -136,7 +133,7 @@ public static class HardwareControl
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void RecreateGpuControlWithDelay(int delay = 3)
|
public static void RecreateGpuControlWithDelay(int delay = 5)
|
||||||
{
|
{
|
||||||
// Re-enabling the discrete GPU takes a bit of time,
|
// Re-enabling the discrete GPU takes a bit of time,
|
||||||
// so a simple workaround is to refresh again after that happens
|
// so a simple workaround is to refresh again after that happens
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
using GHelper.Gpu;
|
|
||||||
using Microsoft.Win32;
|
using Microsoft.Win32;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.Globalization;
|
using System.Globalization;
|
||||||
@@ -64,7 +63,7 @@ namespace GHelper
|
|||||||
}
|
}
|
||||||
|
|
||||||
Logger.WriteLine("------------");
|
Logger.WriteLine("------------");
|
||||||
Logger.WriteLine("App launched: " + config.GetModel() + " :" + Assembly.GetExecutingAssembly().GetName().Version.ToString() + (IsUserAdministrator()?"A":""));
|
Logger.WriteLine("App launched: " + config.GetModel() + " :" + Assembly.GetExecutingAssembly().GetName().Version.ToString() + (IsUserAdministrator() ? "A" : ""));
|
||||||
|
|
||||||
Application.EnableVisualStyles();
|
Application.EnableVisualStyles();
|
||||||
|
|
||||||
@@ -253,6 +252,23 @@ namespace GHelper
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void TabletMode()
|
||||||
|
{
|
||||||
|
bool touchpadState, tabletState;
|
||||||
|
|
||||||
|
using (var key = Registry.CurrentUser.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\PrecisionTouchPad\Status", false))
|
||||||
|
{
|
||||||
|
touchpadState = (key?.GetValue("Enabled")?.ToString() == "1");
|
||||||
|
}
|
||||||
|
|
||||||
|
tabletState = wmi.DeviceGet(ASUSWmi.TabletState) > 0;
|
||||||
|
|
||||||
|
Logger.WriteLine("Tablet: " + tabletState + " Touchpad: " + touchpadState);
|
||||||
|
|
||||||
|
if ((tabletState && touchpadState) || (!tabletState && !touchpadState))
|
||||||
|
wmi.DeviceSet(ASUSWmi.UniversalControl, ASUSWmi.Touchpad_Toggle, "Touchpad");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
static void WatcherEventArrived(object sender, EventArrivedEventArgs e)
|
static void WatcherEventArrived(object sender, EventArrivedEventArgs e)
|
||||||
{
|
{
|
||||||
@@ -278,6 +294,10 @@ namespace GHelper
|
|||||||
case 179: // FN+F4
|
case 179: // FN+F4
|
||||||
KeyProcess("fnf4");
|
KeyProcess("fnf4");
|
||||||
return;
|
return;
|
||||||
|
case 189: // Tablet mode
|
||||||
|
TabletMode();
|
||||||
|
return;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
9
app/Settings.Designer.cs
generated
9
app/Settings.Designer.cs
generated
@@ -267,24 +267,25 @@ namespace GHelper
|
|||||||
labelModel.Anchor = AnchorStyles.Top | AnchorStyles.Right;
|
labelModel.Anchor = AnchorStyles.Top | AnchorStyles.Right;
|
||||||
labelModel.Font = new Font("Segoe UI", 9F, FontStyle.Regular, GraphicsUnit.Point);
|
labelModel.Font = new Font("Segoe UI", 9F, FontStyle.Regular, GraphicsUnit.Point);
|
||||||
labelModel.ForeColor = SystemColors.ControlDark;
|
labelModel.ForeColor = SystemColors.ControlDark;
|
||||||
labelModel.Location = new Point(291, 119);
|
labelModel.Location = new Point(380, 119);
|
||||||
labelModel.Margin = new Padding(8, 0, 8, 0);
|
labelModel.Margin = new Padding(8, 0, 8, 0);
|
||||||
labelModel.Name = "labelModel";
|
labelModel.Name = "labelModel";
|
||||||
labelModel.Size = new Size(492, 32);
|
labelModel.Size = new Size(400, 32);
|
||||||
labelModel.TabIndex = 38;
|
labelModel.TabIndex = 38;
|
||||||
labelModel.TextAlign = ContentAlignment.TopRight;
|
labelModel.TextAlign = ContentAlignment.TopRight;
|
||||||
//
|
//
|
||||||
// labelVersion
|
// labelVersion
|
||||||
//
|
//
|
||||||
labelVersion.AutoSize = true;
|
labelVersion.AutoSize = false;
|
||||||
labelVersion.Font = new Font("Segoe UI", 9F, FontStyle.Underline, GraphicsUnit.Point);
|
labelVersion.Font = new Font("Segoe UI", 9F, FontStyle.Underline, GraphicsUnit.Point);
|
||||||
labelVersion.ForeColor = SystemColors.ControlDark;
|
labelVersion.ForeColor = SystemColors.ControlDark;
|
||||||
labelVersion.Location = new Point(25, 119);
|
labelVersion.Location = new Point(25, 119);
|
||||||
labelVersion.Margin = new Padding(8, 0, 8, 0);
|
labelVersion.Margin = new Padding(8, 0, 8, 0);
|
||||||
labelVersion.Name = "labelVersion";
|
labelVersion.Name = "labelVersion";
|
||||||
labelVersion.Size = new Size(44, 32);
|
labelVersion.Size = new Size(300, 32);
|
||||||
labelVersion.TabIndex = 37;
|
labelVersion.TabIndex = 37;
|
||||||
labelVersion.Text = "v.0";
|
labelVersion.Text = "v.0";
|
||||||
|
labelVersion.Cursor = Cursors.Hand;
|
||||||
//
|
//
|
||||||
// labelBattery
|
// labelBattery
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ using GHelper.Gpu;
|
|||||||
using Starlight.AnimeMatrix;
|
using Starlight.AnimeMatrix;
|
||||||
using System.Diagnostics;
|
using System.Diagnostics;
|
||||||
using System.Drawing.Imaging;
|
using System.Drawing.Imaging;
|
||||||
|
using System.Net;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Text.Json;
|
using System.Text.Json;
|
||||||
using System.Timers;
|
using System.Timers;
|
||||||
@@ -158,7 +159,7 @@ namespace GHelper
|
|||||||
|
|
||||||
contextMenuStrip.Items.Clear();
|
contextMenuStrip.Items.Clear();
|
||||||
|
|
||||||
Padding padding = new Padding(15,5,5,5);
|
Padding padding = new Padding(15, 5, 5, 5);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
TableLayoutPanel[] tables = { tablePerf, tableGPU };
|
TableLayoutPanel[] tables = { tablePerf, tableGPU };
|
||||||
@@ -294,10 +295,20 @@ namespace GHelper
|
|||||||
|
|
||||||
var gitVersion = new Version(tag);
|
var gitVersion = new Version(tag);
|
||||||
var appVersion = new Version(Assembly.GetExecutingAssembly().GetName().Version.ToString());
|
var appVersion = new Version(Assembly.GetExecutingAssembly().GetName().Version.ToString());
|
||||||
|
//appVersion = new Version("0.50.0.0");
|
||||||
|
|
||||||
if (gitVersion.CompareTo(appVersion) > 0)
|
if (gitVersion.CompareTo(appVersion) > 0)
|
||||||
{
|
{
|
||||||
SetVersionLabel(Properties.Strings.DownloadUpdate + ": " + tag, url);
|
SetVersionLabel(Properties.Strings.DownloadUpdate + ": " + tag, url);
|
||||||
|
if (Program.config.getConfigString("skip_version") != tag)
|
||||||
|
{
|
||||||
|
DialogResult dialogResult = MessageBox.Show(Properties.Strings.DownloadUpdate + ": G-Helper " + tag + "?", "Update", MessageBoxButtons.YesNo);
|
||||||
|
if (dialogResult == DialogResult.Yes)
|
||||||
|
AutoUpdate(url);
|
||||||
|
else
|
||||||
|
Program.config.setConfig("skip_version", tag);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -314,6 +325,57 @@ namespace GHelper
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void SetVersionLabel(string label, string url = null)
|
||||||
|
{
|
||||||
|
BeginInvoke(delegate
|
||||||
|
{
|
||||||
|
labelVersion.Text = label;
|
||||||
|
if (url is not null)
|
||||||
|
{
|
||||||
|
this.versionUrl = url;
|
||||||
|
labelVersion.ForeColor = Color.Red;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public async void AutoUpdate(string requestUri)
|
||||||
|
{
|
||||||
|
|
||||||
|
Uri uri = new Uri(requestUri);
|
||||||
|
string zipName = Path.GetFileName(uri.LocalPath);
|
||||||
|
|
||||||
|
string exeLocation = Application.ExecutablePath;
|
||||||
|
string exeDir = Path.GetDirectoryName(exeLocation);
|
||||||
|
string zipLocation = exeDir + "\\" + zipName;
|
||||||
|
|
||||||
|
using (WebClient client = new WebClient())
|
||||||
|
{
|
||||||
|
client.DownloadFile(uri, zipLocation);
|
||||||
|
}
|
||||||
|
|
||||||
|
var cmd = new Process();
|
||||||
|
cmd.StartInfo.UseShellExecute = false;
|
||||||
|
cmd.StartInfo.CreateNoWindow = true;
|
||||||
|
cmd.StartInfo.FileName = "powershell";
|
||||||
|
cmd.StartInfo.Arguments = $"Start-Sleep -Seconds 1; Expand-Archive {zipLocation} -DestinationPath {exeDir} -Force; {exeLocation}";
|
||||||
|
cmd.Start();
|
||||||
|
|
||||||
|
Debug.WriteLine(requestUri);
|
||||||
|
Debug.WriteLine(zipLocation);
|
||||||
|
|
||||||
|
Application.Exit();
|
||||||
|
return;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private void LabelVersion_Click(object? sender, EventArgs e)
|
||||||
|
{
|
||||||
|
Process.Start(new ProcessStartInfo(versionUrl) { UseShellExecute = true });
|
||||||
|
}
|
||||||
|
|
||||||
private static void TrayIcon_MouseMove(object? sender, MouseEventArgs e)
|
private static void TrayIcon_MouseMove(object? sender, MouseEventArgs e)
|
||||||
{
|
{
|
||||||
Program.settingsForm.RefreshSensors();
|
Program.settingsForm.RefreshSensors();
|
||||||
@@ -419,22 +481,8 @@ namespace GHelper
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void SetVersionLabel(string label, string url = null)
|
|
||||||
{
|
|
||||||
labelVersion.Text = label;
|
|
||||||
if (url is not null)
|
|
||||||
{
|
|
||||||
this.versionUrl = url;
|
|
||||||
labelVersion.ForeColor = Color.Red;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private void LabelVersion_Click(object? sender, EventArgs e)
|
|
||||||
{
|
|
||||||
Process.Start(new ProcessStartInfo(versionUrl) { UseShellExecute = true });
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private void CheckStartup_CheckedChanged(object? sender, EventArgs e)
|
private void CheckStartup_CheckedChanged(object? sender, EventArgs e)
|
||||||
{
|
{
|
||||||
@@ -1695,7 +1743,8 @@ namespace GHelper
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
OptimizationService.SetChargeLimit(limit);
|
OptimizationService.SetChargeLimit(limit);
|
||||||
} catch (Exception ex)
|
}
|
||||||
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
Debug.WriteLine(ex);
|
Debug.WriteLine(ex);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -149,6 +149,8 @@ It's a lightweight Armoury Crate alternative for Asus laptops. A small utility t
|
|||||||
|
|
||||||
- It's not recommended to use an app in combination with Armoury Crate services, because they adjust the same settings. You can [uninstall it using it's own uninstall tool](https://dlcdnets.asus.com/pub/ASUS/mb/14Utilities/Armoury_Crate_Uninstall_Tool.zip?model=armoury%20crate). Just in case, you can always install it back later.
|
- It's not recommended to use an app in combination with Armoury Crate services, because they adjust the same settings. You can [uninstall it using it's own uninstall tool](https://dlcdnets.asus.com/pub/ASUS/mb/14Utilities/Armoury_Crate_Uninstall_Tool.zip?model=armoury%20crate). Just in case, you can always install it back later.
|
||||||
|
|
||||||
|
- Also, it's not recommended to have "ASUS Smart Display Control" app running, as it will try to change refresh rates and fight with g-helper for the same function. You can safely uninstall it.
|
||||||
|
|
||||||
-------------------------------
|
-------------------------------
|
||||||
|
|
||||||
Designed and developed for Asus Zephyrus G14 2022 (with AMD Radeon iGPU and dGPU). But could and should potentially work for G14 of 2021 and 2020, G15, X FLOW, and other ROG models for relevant and supported features.
|
Designed and developed for Asus Zephyrus G14 2022 (with AMD Radeon iGPU and dGPU). But could and should potentially work for G14 of 2021 and 2020, G15, X FLOW, and other ROG models for relevant and supported features.
|
||||||
|
|||||||
Reference in New Issue
Block a user