Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Win 7 Energiesparplan - Direkter und Rotierender wechsel (in der Taskleiste)

Tipp Entwicklung Batch & Shell

Mitglied: pieh-ejdsch

pieh-ejdsch (Level 2) - Jetzt verbinden

16.06.2011, aktualisiert 22.03.2012, 7019 Aufrufe, 1 Danke

Seit Windows 7 wurde dieses Symbol für PC aus der Taskleiste verbannt

Moin,
nun hat es mich doch ständig gestört in die Energieoptionen zu hangeln und dann weiter unten oder weiter oben draufzuklicken um ein anderes Schema auszuwählen.
Was es so an Tools und Tipps dazu gibt ist auch nicht so die Menge.

Vorangig ist der Batch in einen leeren Ordner zu Verfrachten, und über
einen Rechtsklick auf die Taskleiste -> Symbolleiste -> neue Symbolleiste... ->Ordner auswählen
einzufügen.

Über die CMD werden die Links der Energieschemata mit dem Parameter "Link" erzeugt.
Der Link des aktuellen Energieschema ist mit (x) gekenzeichnet.

Der Parameter "-" nimmt das aktuelle Energieschema aus der Rotation heraus.
Diese Einstellungen werden in den Batch hinterlegt.

Der Parameter "+" setzt die Rotation wieder züruck (alle Energieschemata sind wieder in der Rotation) und die Links werden erstellt.

Für den Wechsel von zwei Presets empfielt es sich die restlichen aus der Rotation zu nehmen, danach die Links zu löschen und nur den Batch anzuklicken.
Der Batchname erhält das aktuelle und das nächste Energieschema.

so genug der Worte.
01.
:: -- schnipp ---- SwitchPowerSheme.cmd ---- 
02.
@echo off 
03.
if "%~1" == "del.rename" del "%temp%\rename.cmd" & goto :eof 
04.
if "%~1" == "Rotate" del "%temp%\Rename.cmd" & goto :Link 
05.
if "%~1" == "del.Reset" del "%temp%\Reset.cmd" & goto :Link 
06.
if "%~1" == "del.noSwitch" del "%temp%\noSwitch.cmd" 
07.
if "%~1" == "/?" ( 
08.
echo Wechselt das Energieschema rotierend und/oder erstellt Links zum direkten wechsel 
09.
echo\ 
10.
echo Syntax: 
11.
echo "%~n0" [-^|+^|Link] 
12.
echo       ohne Parameter wird das Energieschema rotierend gewechselt 
13.
echo  -    das Aktuelle Schema wird aus der Rotation entfernt 
14.
echo  +    Pro Energieschema wird ein Link erstellt. Und Reset 
15.
echo        der Rotationsliste. 
16.
echo        der Aktive Link ist mit ^(x^) versehen. 
17.
echo Link  Pro Energieschema wird ein Link erstellt. 
18.
echo\ 
19.
echo\      Wenn Keine Links zu den Energieschemata gefunden werden 
20.
echo\      wird der Batchname mit dem Aktiven und dem naechsten versehen. 
21.
goto :eof 
22.
23.
setlocal 
24.
set "Link=" 
25.
set "OrigBatchname=SwitchPowerSheme" 
26.
if /i "%~1" == "Link" goto :test 
27.
for /f "tokens=1,5* delims=: " %%i in ('powercfg list^|findstr :^|findstr /n ^^^^') do ( 
28.
	set "Guid%%i=%%j" 
29.
	for /f "delims=()" %%l in ("%%k") do (set "Name%%i=%%l" 
30.
		if exist "%~dp0*%%l.lnk" set "Link=1" 
31.
32.
	echo "%%k"|find "*" >nul&&set "NrAktiv=%%i" 
33.
	set "MaxGuid=%%i" 
34.
35.
if not "%~1" == "-" goto :XnoSwitch 
36.
:: Nichtvorhandenen Zeilenvorschub erfassen 
37.
for /f %%i in ('findstr /n /v /x /c:":::- %NrAktiv%" "%~0"^|find /c ":"') do for /f %%j in ('^(findstr /n /v /x /c:":::- %NrAktiv%" "%~0"^&echo :^)^|find /c ":"') do if %%i ==%%j (set "LineFeed=") else set "LineFeed=^>nul" 
38.
findstr /x /c:":::- %NrAktiv%" "%~0" >nul 2>nul || ( 
39.
>&4 echo @echo off 
40.
>&4 echo ^( 
41.
>&4 echo ^>^&4 findstr /v /x /c:":::- %NrAktiv%" "%~f0" 
42.
>&4 echo\^>^&4 echo\%LineFeed% 
43.
>&4 echo ^>^&4 echo :::- %NrAktiv% 
44.
>&4 echo ^)4^>"%~dp0noSwitch.me" 
45.
>&4 echo del "%~f0" 
46.
>&4 echo ren "%~dp0noSwitch.me" "%~nx0" 
47.
>&4 echo "%~f0" "del.noSwitch" 
48.
) 4>"%temp%\noSwitch.cmd"^ 
49.
 &&"%temp%\noSwitch.cmd" || "%~f0" noSwitch 
50.
:XnoSwitch 
51.
if not "%~1" == "+" goto :XReset 
52.
:Reset 
53.
54.
>&4 echo @echo off 
55.
>&4 echo ^( 
56.
>&4 echo findstr /v /b /c:":::- " "%~f0" 
57.
>&4 echo ^)^>"%~dp0Reset.me" 
58.
>&4 echo del "%~f0" 
59.
>&4 echo ren "%~dp0Reset.me" "%OrigBatchname%%~x0" 
60.
>&4 echo "%~dp0%OrigBatchname%%~x0" "del.Reset" 
61.
) 4>"%temp%\Reset.cmd" 
62.
"%temp%\Reset.cmd" 
63.
:XReset 
64.
:Rotate 
65.
set /a y=(NrAktiv+1)%%MaxGuid,x=MaxGuid/y >nul 2>nul && set /a NrAktiv=y || set /a NrAktiv=MaxGuid 
66.
set /a NextAktiv=NrAktiv 
67.
:Rotate2 
68.
set /a y=(NextAktiv+1)%%MaxGuid,x=MaxGuid/y >nul 2>nul && set /a NextAktiv=y || set /a NextAktiv=MaxGuid 
69.
findstr /x /c:":::- %NrAktiv%" "%~f0" >nul && goto :Rotate 
70.
findstr /x /c:":::- %NextAktiv%" "%~f0" >nul && goto :Rotate2 
71.
call set "GuidNew=%%Guid%NrAktiv%%%" 
72.
call set "NewName=%%Name%NrAktiv%%% -nach- %%Name%NextAktiv%%%" 
73.
if "%~1" == "" Powercfg -setactive %GuidNew% 
74.
if not defined Link 4>"%temp%\rename.cmd" ( 
75.
>&4 echo ren "%~f0" "%NewName%%~x0" 
76.
>&4 echo "%~dp0%NewName%" "del.rename" 
77.
) && "%temp%\rename.cmd" 
78.
:Test 
79.
if not "%~n0" == "%OrigBatchname%" 4>"%temp%\rename.cmd" ( 
80.
	>&4 echo ren "%~f0" "%OrigBatchname%%~x0" 
81.
	>&4 echo "%~dp0%OrigBatchname%%~x0" Rotate 
82.
) && "%temp%\rename.cmd" 
83.
:Link 
84.
if not "%~1" == "" powercfg list|find ":"|find " %~1 " >nul 2>nul && Powercfg -setactive %~1 
85.
set "LinkPfad=%~dp0" 
86.
::set "LinkName=%~n0" 
87.
set "ProgPfad=%~dp0" 
88.
set "ProgFile=%~nx0" 
89.
::set "Parameters=GUID" 
90.
set "Beschreibung=Aktiv oder Inaktiv" 
91.
 
92.
for /f "tokens=1,5* delims=: " %%i in ('powercfg list^|findstr :^|findstr /n "^"') do ( 
93.
	4>"%temp%\MakeShortCut.vbs" ( 
94.
		>&4 echo Set objShell=WScript.CreateObject^("Wscript.Shell"^) 
95.
		>&4 echo Set objShortcut=objShell.CreateShortcut^("%LinkPfad%Temp.lnk"^) 
96.
		for /f "delims=()" %%l in ("%%k") do ( 
97.
			if exist "%LinkPfad%*%%l.lnk" del "%LinkPfad%*%%l.lnk" 
98.
			findstr /x /c:":::- %%i" "%~f0" >nul&& >&4 echo objShortcut.Description="Nicht Automatisch"||echo "%%k"|find "*" >nul && ( 
99.
				>&4 echo objShortcut.Description="Aktiviertes Energieschema" 
100.
			) || ( 
101.
				>&4 echo objShortcut.Description="Nicht Aktiv" 
102.
			)	) 
103.
		>&4 echo objShortcut.TargetPath="%ProgPfad%\%ProgFile%" 
104.
		>&4 echo objShortcut.WorkingDirectory="%ProgPfad%" 
105.
		>&4 echo objShortcut.Arguments = "%%j" 
106.
		>&4 echo objShortcut.Save 
107.
108.
	cscript //nologo "%temp%\MakeShortCut.vbs" 
109.
	for /f "delims=()" %%l in ("%%k") do echo "%%k"|find "*" >nul && ren "%LinkPfad%Temp.lnk" "%%i (x) %%l.lnk" || findstr /x /c:":::- %%i" "%~f0" >nul && ren "%LinkPfad%Temp.lnk" "%%i - %%l.lnk" || ren "%LinkPfad%Temp.lnk" "%%i %%l.lnk" 
110.
111.
del "%temp%\MakeShortCut.vbs" 
112.
goto :eof 
113.
:: -- schnapp ---- SwitchPowerSheme.cmd ----
der Code ist so geschrieben, dass ein Eingeschaltenes Echo mit der Erstellung der Temporären .VBS und .CMD Dateien kompatibel ist.
Dadurch kann man(n) auch besser eventuelle Fehler im Code beim Debuggen ausmachen - das echo der Befehle ist auf den Promt und NUR die Ausgabe der Befehle dort wo sie hin soll.

Gruß Phil
Ähnliche Inhalte
Windows 10
Win 7 Pro auf Win 10 Pro - Umstiegserfahrung
Erfahrungsbericht von KowaKowalskiWindows 1052 Kommentare

Hi Leute, hier meine Erfahrungen mit dem Umstieg auf Win 10. (Lenovo ThinkPad W510 i7 - Windows 7 Pro ...

Digitiales Fernsehen
Sky treibt mit dem Wechsel des Verschlüsselungssystems langjährigen Kunden zu den Streaming Diensten
Erfahrungsbericht von FrankDigitiales Fernsehen27 Kommentare

Wie konnte die Filmbranche eigentlich in der Zeit von VHS und Betamax überhaupt überleben? Jeder konnte Filme und Sendungen ...

Erkennung und -Abwehr
USB-Sticks und USB-Cardreader direkt nach dem Verbinden scannen - Anhand von Avira ScanCL
Anleitung von nikoatitErkennung und -Abwehr9 Kommentare

Moin, mein Aufgabstellung lautete: Hauptsächlich USB-Sticks und USB-Cardreader direkt nach dem Verbinden zu scannen. Die nachfolgende Doku ist zwar ...

Administrator.de Feedback
Entwicklertagebuch: PHP 7
Information von admtechAdministrator.de Feedback4 Kommentare

Hallo Administrator User, mit dem heutigen Tag haben wir unsere Server komplett auf die PHP Version 7 umgestellt. Wir ...

Neue Wissensbeiträge
Windows 10

Windows 10 Hello-Anmeldung per Foto ausgehebelt

Tipp von kgborn vor 1 StundeWindows 10

Windows Hello ist eine Funktion, um sich per Fingerabdruck-, Gesichts- oder Iriserkennung bei Windows 10-Geräten anzumelden (siehe), setzt aber ...

Perl

Perl hat heute Geburtstag: 30 Jahre Perl: Lange Gesichter zum Geburtstag

Information von Penny.Cilin vor 9 StundenPerl2 Kommentare

Hallo, auch wenn es wenige wissen und noch weniger Leute es nutzen. Perl hat heute Geburtstag. 30 Jahre Perl ...

Sicherheit

Blackberry stirbt - Keine Updates für Priv mehr

Tipp von certifiedit.net vor 9 StundenSicherheit1 Kommentar

Blackberry wird zu einer 08/15 Firma und geht wohl mehr und mehr den Weg, den HTC schon ging. Von ...

Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 2 TagenWindows 1012 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Heiß diskutierte Inhalte
Windows Server
SCCM 2016: PXE Boot des Clients schlägt fehl
Frage von gabeBUWindows Server22 Kommentare

Hallo Zusammen Ich habe eine Testumgebung erstellt um über SCCM 2016 einen virtuellen Client aufzusetzen. Folgende Maschinen habe ich ...

Netzwerkgrundlagen
Belibiges Teilnetz einer Subnetzmaske rausfinden?
gelöst Frage von CenuzeNetzwerkgrundlagen19 Kommentare

Wundervollen Gutentag, mittlerweile kann ich Subnetting so einigermaßen, aber ein Problem habe ich noch. Netzwerkadresse und Boradcast errechnen ist ...

LAN, WAN, Wireless
WLAN Reichweite erhöhen mit neuer Antenne
gelöst Frage von gdconsultLAN, WAN, Wireless12 Kommentare

Hallo, ich besitze einen TL-WN722N USB-WLAN Dongle mit einer richtigen Antenne. Ich frage mich jetzt ob man die Reichweite ...

Windows Server
Logging von "gesendeten Nachrichten" auf Terminalservern
gelöst Frage von Z3R0C0MM4N0THiN6Windows Server10 Kommentare

Hallo zusammen, kann mir jemand auf kurzem Wege sagen ob 1) die per Task-Manager (oder damals tsadmin) an Benutzer ...