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?
Please also mark the comments that contributed to the solution of the article
Content-Key: 664909
Url: https://administrator.de/contentid/664909
Printed on: May 5, 2024 at 02:05 o'clock
5 Comments
Latest comment
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.