Verknüpfung am öffentlichen Desktop anlegen ohne die Batch Datei als Admin auszuführen
Guten Tag,
ich möchte eine Verknüpfung auf den Desktop von allen Benutzern anlegen und nicht nur auf dem der angemeldeten Person.
Mein Code:
Eigentlich müsste ich nur den Speicherort der Verknüpfung folgend umbenennen: set "C:\Users\Public\Desktop"
Und weiter unten die Zeile so anpassen: echo Set objShortcut=objShell.CreateShortcut("C:\Users\Public\Desktop\FLS_VISITOUR.lnk")>>%temp%\MakeShortCut.vbs
Jedoch bekomme ich dann keine Verknüpfung. Der Desktop Ordner für alle Benutzer ist versteckt. Wenn ich die Batch Datei als Administrator ausführe bekomme ich das gewünschte Ergebnis. Kann ich es irgendwie ändern, dass ich es normal durch Doppelklick ausführen kann und nicht als Admin ausführen muss?
ich möchte eine Verknüpfung auf den Desktop von allen Benutzern anlegen und nicht nur auf dem der angemeldeten Person.
Mein Code:
:: Speicherort der Verknüpfung
set "C:\Users\%USERNAME%\Desktop\FLS_VISITOUR"
:: Name der Verknüpfung
set "progtitel=FLS_VISITOUR"
:: Speicherort der Programmdatei
set "progdir=C:\FLS"
:: Auslesen der exe Datei (ändert sich wegen Version-Updates)
for %%a in ("C:\FLS\FLS VISITOUR Client*.exe") do set "exepfad=%%a"
:: temporäres VBScript erzeugen
echo Set objShell=WScript.CreateObject("Wscript.Shell")>%temp%\MakeShortCut.vbs
echo Set objShortcut=objShell.CreateShortcut("C:\Users\%USERNAME%\Desktop\FLS_VISITOUR.lnk")>>%temp%\MakeShortCut.vbs
echo objShortcut.TargetPath="%exepfad%">>%temp%\MakeShortCut.vbs
echo objShortcut.Description="%beschreibung%">>%temp%\MakeShortCut.vbs
echo objShortcut.WorkingDirectory="C:\FLS">>%temp%\MakeShortCut.vbs
echo objShortcut.Save>>%temp%\MakeShortCut.vbs
:: VBScript ausführen
cscript //nologo %temp%\MakeShortCut.vbs
:: VBScript wieder löschen
del %temp%\MakeShortCut.vbs
Und weiter unten die Zeile so anpassen: echo Set objShortcut=objShell.CreateShortcut("C:\Users\Public\Desktop\FLS_VISITOUR.lnk")>>%temp%\MakeShortCut.vbs
Jedoch bekomme ich dann keine Verknüpfung. Der Desktop Ordner für alle Benutzer ist versteckt. Wenn ich die Batch Datei als Administrator ausführe bekomme ich das gewünschte Ergebnis. Kann ich es irgendwie ändern, dass ich es normal durch Doppelklick ausführen kann und nicht als Admin ausführen muss?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 664909
Url: https://administrator.de/contentid/664909
Ausgedruckt am: 19.11.2024 um 11:11 Uhr
5 Kommentare
Neuester Kommentar
Hi,
ein Möglichkeit wäre, die ACL des Ordners C:\Users\Public\Desktop so zu ändern, dass der betreffende ausführende Benutzer dort schreiben und ändern darf.
Darf man fragen, wann und wie diese Batch ausgeführt werden soll?
Und warum eine Batch, wo Du doch eh zwischendurch den Umweg über VBscript nimmst? Warum nicht gleich komplett in VBscript?
E.
Edit:
Eine andere Möglichkeit wäre, als Admin einen Scheduled Task zu erstellen, welcher vom Benutzer "bei Bedarf" ausgeführt werden kann und z.B. unter LocalSystem läuft. Dieser Task kopiert z.B. von einem definierten Quellverzeichnis alles nach C:\Users\Public\Desktop. Die Batch (der Benutzer) müsste dann nur in diesem definierten Quellverzeichnis schreiben dürfen und den Task starten.
ein Möglichkeit wäre, die ACL des Ordners C:\Users\Public\Desktop so zu ändern, dass der betreffende ausführende Benutzer dort schreiben und ändern darf.
Darf man fragen, wann und wie diese Batch ausgeführt werden soll?
Und warum eine Batch, wo Du doch eh zwischendurch den Umweg über VBscript nimmst? Warum nicht gleich komplett in VBscript?
E.
Edit:
Eine andere Möglichkeit wäre, als Admin einen Scheduled Task zu erstellen, welcher vom Benutzer "bei Bedarf" ausgeführt werden kann und z.B. unter LocalSystem läuft. Dieser Task kopiert z.B. von einem definierten Quellverzeichnis alles nach C:\Users\Public\Desktop. Die Batch (der Benutzer) müsste dann nur in diesem definierten Quellverzeichnis schreiben dürfen und den Task starten.
Zitat von @emeriks:
Und warum eine Batch, wo Du doch eh zwischendurch den Umweg über VBscript nimmst? Warum nicht gleich komplett in VBscript?
Hallo,Und warum eine Batch, wo Du doch eh zwischendurch den Umweg über VBscript nimmst? Warum nicht gleich komplett in VBscript?
oder per GPO's
Sofern AD vorhanden.