
私はWindows 7を搭載した新しいラップトップをセットアップしており、雨量計サイドバーにシステム情報 (CPU、メモリ、GPU 情報など) を表示します。GPU 統計情報にアクセスするには、バックグラウンドで MSI Afterburner が実行されている必要があります。
とにかく、この余分なソフトウェアのせいでバッテリーの寿命が短くなっているかもしれないと気づいたので、バッテリーが一定レベル (たとえば 50%) を下回ったら、これら 2 つのプログラム (Rainmeter と MSI) を自動的に終了する方法を探しています。他の用途には Autohotkey を使用していますが、それや他のプログラムを使った解決策は見つかっていません。
そしてアイデアは?
答え1
バッテリー残量が 50% を下回った後に 2 つのプロセスを閉じるスクリプトを次に示します。
SetTimer, CheckBatteryLevel, 2000
Return
CheckBatteryLevel:
VarSetCapacity(powerstatus, 1+1+1+1+4+4)
success := DllCall("kernel32.dll\GetSystemPowerStatus", "uint", &powerstatus)
batteryLifePercent := ReadInteger(&powerstatus,2,1,false)
if (batteryLifePercent < 50)
{
KillIfExists("Rainmeter.exe")
KillIfExists("MSI.exe")
}
Return
KillIfExists(p)
{
Process, Exist, % p
If (ErrorLevel)
Process, Close, % p
}
ReadInteger( p_address, p_offset, p_size, p_hex=true )
{
value = 0
old_FormatInteger := a_FormatInteger
if ( p_hex )
SetFormat, integer, hex
else
SetFormat, integer, dec
loop, %p_size%
value := value+( *( ( p_address+p_offset )+( a_Index-1 ) ) << ( 8* ( a_Index-1 ) ) )
SetFormat, integer, %old_FormatInteger%
return, value
}
私は、この郵便受け
答え2
これをチェックしてください。http://batterysaver.codeplex.com/
バッテリーの減少に基づいてプロセスを強制終了する機能を提供します。
このプログラムはまだ開発の初期段階にあり、ユーザーフレンドリーではありませんが、それでも仕事をこなすことができ、称賛に値します。ライアン・エメリー開発に尽力してくれた彼の功績に感謝します。プログラムを管理者として実行し、動作させるには少し操作してみる必要があります。
答え3
この回答はRainmeterに特有のものです。テストはしていませんが、これプラグインはバッテリーのパーセンテージを測定できます。バッテリーが特定のパーセントを下回ったときに測定するために使用するスキンを作成しif
、その後、Rainmeter を閉じる Autohotkey プログラムである exe を開くことができます。
この質問は古いものだと承知していますが、同じ疑問を持つ人のために、私の意見を述べたいと思います。テストはしていませんが、機能しない理由はないと思います。