Setzen Sie die Windows XP-Power-Button-Aktion mit Skript- oder Registrierungseinstellungen auf "Keine Aktion"

3005
Ryan_S

Wie stelle ich die Option "Wenn ich den Netzschalter auf meinem Computer drücke:" in Windows XP mit einem Registrierungsschlüssel oder einem Skript auf "Keine Aktion" ein?

Ich habe dieses Beispiel beim Suchen gefunden, aber es soll für den Sleep-Button sein, und es scheint nicht zu funktionieren.

Ich habe diese Schlüssel gefunden, aber ich habe keine Ahnung, was der richtige Wert sein sollte, da es REG_BINARY ist

HKLM\SYSTEM\ControlSet001\Control\Session Manager\Power\AcPolicy HKLM\SYSTEM\ControlSet001\Control\Session Manager\Power\DcPolicy HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Power\AcPolicy HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Power\DcPolicy 
1

2 Antworten auf die Frage

2
Moab

Ich weiß nicht, ob Sie noch nach einer Lösung suchen. Ich brauchte etwas, um die Power Button-Einstellung von der Standardeinstellung "Shutdown" in "Do nothing" zu ändern, also habe ich dieses Vbscript geschrieben.

'*************************************************************************************** ' File: pwrDoNothing.vbs ' Author: Joe Rawlins ' Purpose: Set system Power Button to 'Do nothing' '  ' ' Notes: Requires button to be held for 5 seconds to initiate shutdown '  '  '  ' ' Last Modified: 06/25/2010 jtr Initial creation '  '*************************************************************************************** Option Explicit  Dim objShell, WshShell  Set objShell = CreateObject("Shell.Application") Set WshShell = CreateObject("WScript.Shell")  objShell.ControlPanelItem("powercfg.cpl")  WScript.Sleep 500 WshShell.SendKeys "+" WScript.Sleep 500 WshShell.SendKeys "" WScript.Sleep 500 WshShell.SendKeys "" WScript.Sleep 500 WshShell.SendKeys "" WScript.Sleep 500 WshShell.SendKeys "" 

Quelle des Skripts

Danke @Luke, das habe ich ausprobiert, hatte aber kein Glück, meistens weil ich keine Ahnung von HTML habe Moab vor 12 Jahren 0
@Luke: das sieht ziemlich gut aus und würde wahrscheinlich funktionieren, ich werde es versuchen, wenn ich den richtigen Registrierungsschlüsselwert nicht finde. Ryan_S vor 12 Jahren 0
Wenn jemand den Registrierungswert finden kann, der sich ändert, würde dies viel reibungsloser funktionieren, insbesondere bei einer größeren Anzahl von Hardware Canadian Luke vor 12 Jahren 0
Installieren Sie Process Monitor auf einem PC und ändern Sie die Einstellung in der GUI. Durchsuchen Sie dann den PM-Snapsot nach Registrierungsaufrufen .... http: //technet.microsoft.com/de-de/sysinternals/bb896645 Moab vor 12 Jahren 0
1
Ryan_S

Da ich die entsprechenden Registrierungsschlüsselwerte nicht ermitteln konnte, schrieb ich schließlich ein Skript, um den Dialog zu automatisieren. Und da ich AutoIT für andere Dinge verwendet habe, habe ich das auch verwendet. Hoffe, das kann jemand anderem helfen.

#include <GuiTab.au3> ; Start the System control panel Run("rundll32.exe shell32.dll,Control_RunDLL powercfg.cpl,,3")  $title = "Power Options Properties" $text = "" WinWait( $title, $text) If Not WinActive( $title, $text) Then WinActivate( $title, $text) WinWaitActive( $title, $text)  ;select the 'Advanced' tab $hTab = ControlGetHandle( $title, $text, "[CLASS:SysTabControl32; INSTANCE:1]") _GUICtrlTab_ClickTab($hTab, 1) Sleep(10)  ;set the combobox to 'Do nothing' ControlCommand( $title, $text, "[CLASS:ComboBox; INSTANCE:2]", "SelectString", "Do nothing") Sleep(10)  ;click OK ControlClick( $title, $text, "[CLASS:Button; INSTANCE:6]") 

Das Skript öffnet lediglich das Dialogfeld mit den Energieoptionen, wählt die Registerkarte "Erweitert" aus, setzt die Kombination auf "Keine Aktion" und drückt OK.