Desktop-Verzeichnis in .cmd-Skript ermitteln

08/04/2008 - 19:30 von Christoph Schneegans | Report spam
Hallo allerseits!

Ich arbeite immer noch gerne mit .cmd-Skripts, wobei ich natürlich
Umgebungsvariablen für bessere Portabilitàt verwende. Nun hat der
Netzwerk-Administrator für den Desktop die Ordnerumleitung aktiviert,
und seitdem liegt er nicht mehr in %userprofile%\Desktop, sondern
%homeshare%\Desktop, so daß einige Skripte nicht mehr funktionieren.

Kann man in einem Skript bequem und sicher das Desktop-Verzeichnis
ermitteln? Oder muß man auf Ratespielchen wie

set desktop=unknown
if exist "%homedrive%\Desktop\" set desktop=%homeshare%\Desktop
if exist "%userprofile%\Desktop\" set desktop=%userprofile%\Desktop
echo %desktop%

zurückgreifen? In der Registry sollte
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]
ja auf jeden Fall stimmen, aber da kommt man aus einem .cmd-Skript
AFAIK nicht elegant dran.

<http://schneegans.de/usenet/mid-schreibweisen/> · Postings verlinken
 

Lesen sie die antworten

#1 Ralf Breuer
08/04/2008 - 20:11 | Warnen spam
Christoph Schneegans schrieb:

Hallo Christoph,

In der Registry sollte
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User
Shell Folders] ja auf jeden Fall stimmen, aber da kommt man aus einem
.cmd-Skript AFAIK nicht elegant dran.



for /f "tokens=3 skip=4" %%a in ('reg query
"HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User
Shell Folders" /v desktop') do set desktop=%%a

Alles in eine Zeile.

Gruß
Ralf
Ich mag kein TOFU. Siehe http://einklich.net/usenet/zitier.htm
Bei Direkt-Mails NOSPAM entfernen

Ähnliche fragen