GELÖST SetX Problem. Variable kann nicht gesetzt werden!

Diskutiere SetX Problem. Variable kann nicht gesetzt werden! im Win7 - Software Forum im Bereich Windows 7 Forum; Hiho, mit folgendem Script versuche ich mit Rechtsklick eine Variable Global zu setzen. [HKEY_CLASSES_ROOT\*\shell\NewVariable] @="Set Variable"...

Metal Hunter

Threadstarter
Dabei seit
10.03.2008
Beiträge
250
Alter
32
Ort
~Dortmund
Hiho,

mit folgendem Script versuche ich mit Rechtsklick eine Variable Global zu setzen.

Code:
[HKEY_CLASSES_ROOT\*\shell\NewVariable]
@="Set Variable"
"NoWorkingDirectory"=""
[HKEY_CLASSES_ROOT\*\shell\NewVariable\command]
@="cmd.exe /c elevate setx NewPath %1 /M"
"IsolatedCommand"="cmd.exe /c elevate setx NewPath %1 /M"
 
[HKEY_CLASSES_ROOT\Directory\shell\NewVariable]
@="Set Variable"
"NoWorkingDirectory"=""
[HKEY_CLASSES_ROOT\Directory\shell\NewVariable\command]
@="cmd.exe /c elevate setx NewPath %1 /M"
"IsolatedCommand"="cmd.exe /c elevate setx NewPath %1 /M"

Allerdings wird mit SetX eine Fehlermeldung ausgegeben.



Das ganze klappt nicht mit programfiles und programfiles(x86).
Zuerst dacht ich mir, dass Systemverzeichnisse geschützt wären. Falsch!
c:\windows lässt es mit sich machen. Genauso wie c:\users.

Gibt es eine Lösung für das Problem? Zur Not würde ich auch auf etwas anderes setzen als SetX.:satisfied


BTW: Das elevate vor dem Setx sorgt dafür, dass die uac anspringt und somit der /M schalter auch ausgeführt werden kann.:up
 

Metal Hunter

Threadstarter
Dabei seit
10.03.2008
Beiträge
250
Alter
32
Ort
~Dortmund
Das Problem ist, dass diese beiden Pfade Leerzeichen enthalten !
Danke! An die Leerzeichen denk ich so gut wie nie.:wut

Richtig wäre es so:
cmd.exe /c elevate setx NewPath \"%1\ /M

Also:
Code:
[HKEY_CLASSES_ROOT\*\shell\NewVariable]
@="Set Variable"
"NoWorkingDirectory"=""
[HKEY_CLASSES_ROOT\*\shell\NewVariable\command]
@="cmd.exe /c elevate setx NewPath \"%1\ /M"
"IsolatedCommand"="cmd.exe /c elevate setx NewPath \"%1\ /M"
 
[HKEY_CLASSES_ROOT\Directory\shell\NewVariable]
@="Set Variable"
"NoWorkingDirectory"=""
[HKEY_CLASSES_ROOT\Directory\shell\NewVariable\command]
@="cmd.exe /c elevate setx NewPath \"%1\ /M"
"IsolatedCommand"="cmd.exe /c elevate setx NewPath \"%1\ /M"

Und nun klappt es auch.:up

Außerdem schreibt dein Link, dass er nicht für Windows7 ist !

Mag zwar sein. Aber das ist für mich eher Zweitrangig.
Solange das Programm vom Prinzip her funktioniert (und das tat es) sehe ich kein Grund, es auch in zukünftigen Windows-Versionen nicht einzusetzen.:satisfied
 
Thema:

SetX Problem. Variable kann nicht gesetzt werden!

SetX Problem. Variable kann nicht gesetzt werden! - Ähnliche Themen

Skript: ich habe einen Skriptblock, den ich gerne vor andere Skripte als Funktion setzen möchte. Das Skript funktioniert an sich, allerdings nicht in...
Win 10 Upgrade auf 1803 läuft nicht durch (SECOND_BOOT / MIGRATE_DATA): Hallo, Bei mir läuft das Upgrade auf 1803 nicht durch. Ich hatte seit Win7 bisher entweder keine Probleme mit den Upgrades oder konnte durch die...
GELÖST Hijack file, fenster minimieren sich selbstständig!: Ich hab nach wie vor das Problem, dass sich Fenster selbstständig minimieren! Deshalb hab ich ein HijackThis file erstellt und hoffe, dass sich...
WIKI - Windows 8 Befehle für die Eingabeaufforderung: Daniel Erler: Die Seite wurde neu angelegt == Um bei Windows 8 die meisten Einstellungen vorzunehmen, reicht in der Regel die grafische...
Rundll32.exe stellt großes Problem dar: Hallo und einen guten Tag. Ich schaue nun schon seit einer woche in verschiedenen Foren und Webeinträgen nach meinem Fehler. Folgender: Immer...
Oben