XCOPY-Batch-Befehl funktioniert nicht?
Hallo, ich habe ein selbstentwickeltes Computerprogramm gemacht und habe dabei eine Installationshilfe "programmiert". Diese ist in ganz simpel in Batch geschrieben. Der Installer soll einen Ordner erstellen und die Dateien vom USB-Stick in den Ordner C:\ einfügen. Außerdem soll eine Verknüpfung zu einer der Dateien auf dem Stick (bzw. dann in C:) auf den Desktop kopiert werden. Hier ist der Installer-Batch-"Code"
@echo off
color b0
echo Willkommen in der Installation dieser hilfreichen Anwendung.
echo Moechtest du das Programm jetzt installieren?
echo Druecke eine beliebige Taste.
pause >nul
xcopy "F:\Selbstentwickelte Computerprogramme\EasyStart\EasyStart.lnk\" "C:\Users\%USERPROFILE%\Desktop\"
xcopy "F:\Selbstentwickelte Computerprogramme\EasyStart\EasyStart Files\" "C:\EasyStart\"
Allerdings erstellt und kopiert es nur die Dateien in C:\, die Desktop-Verknüpfung bleibt "forever alone.".
Kann mir jemand helfen?
PS: Oh Mann, ich stelle zur Zeit voll viele Fragen...
3 Antworten
Gib einfach zum Pfad eine Dateimaske an
xcopy "F:\Selbstentwickelte Computerprogramme\EasyStart\EasyStart.lnk" "%USERPROFILE%\Desktop\EasyStart.lnk"
xcopy "F:\Selbstentwickelte Computerprogramme\EasyStart\EasyStart Files\*.*" "C:\EasyStart\*.*"
https://ss64.com/nt/xcopy.html
Wenn Du ins Rootverzeichnis von C: kopieren willst , bzw dort einen Ordner anlegen willst, benötigst Du gegebenenfalls Adminrechte!
PS: Falls auch Unterverzeichnise mitkopiert werden sollen verwende die Schalter /s oder /e
So sollte der Link richtig kopiert werden:
@echo off
color b0
echo Willkommen in der Installation dieser hilfreichen Anwendung.
echo Moechtest du das Programm jetzt installieren?
echo Druecke eine beliebige Taste.
pause >nul
xcopy "F:\Selbstentwickelte Computerprogramme\EasyStart\EasyStart.lnk" "%USERPROFILE%\Desktop\"
xcopy "F:\Selbstentwickelte Computerprogramme\EasyStart\EasyStart Files\" "C:\EasyStart\"
%userprofile% enthält bereits das Laufwerk und den Unterordner Users. So wie du es geschrieben hast, müsstest du %username% verwenden. Ich würde dir trotzdem raten die kürzere und kompatibelere Variante mit %userprofile% zu verwenden.
Den Backslash hinter der LNK-Datei enfernen könnte helfen.