2016-03-31 5 views
0

Ich versuche, eine Datei system.exe in einen Ordner mit Xcopy in einer .bat-Datei zu kopieren. Hier ist der Code. Die Datei system.exe befindet sich im selben Verzeichnis wie die .bat-Datei.xcopy Datei nicht gefunden

md "C:\Users\Public\sys\" 
set copy="%~dp0system.exe" 
set target="C:\Users\Public\sys\" 
xcopy /c copy target /i /r /f 

Ich habe es auch versucht.

xcopy /c "copy" "target" /i /r /f 

Und das.

xcopy /c "%~dp0system.exe" "C:\Users\Public\sys\" /i /r /f 

gab alle die gleiche Antwort

File not found 

Die ersten beiden Versuche gibt

File not found - copy 

Wenn die oben genannten Linien gelingt, wird erzeugen die folgenden Zeilen in der .bat eine Verknüpfung zu der Kopie von system.exe im Autostart-Ordner.

set SCRIPT="%TEMP%\%RANDOM%-%RANDOM%-%RANDOM%-%RANDOM%.vbs" 
echo Set oWS = WScript.CreateObject("WScript.Shell") >> %SCRIPT% 
echo sLinkFile = "%programdata%\Microsoft\Windows\Start Menu\Programs\Startup\startup.lnk" >> %SCRIPT% 
echo Set oLink = oWS.CreateShortcut(sLinkFile) >> %SCRIPT% 
echo oLink.TargetPath = "C:\Users\Public\sys\system.exe" >> %SCRIPT% 
echo oLink.Save >> %SCRIPT% 
cscript /nologo %SCRIPT% 
del %SCRIPT% 

Das habe ich mir erhofft. Jede Hilfe wird geschätzt.

add:

lief ich die .bat als Administrator

+3

Versuchen Sie Folgendes: 'xcopy/c/i/r/f"% Kopie% ""% Ziel% "'; Sie müssen eine Variable mit '%' sogns einschließen, um sie zu erweitern (lesen); Ich empfehle, 'copy' nicht als Variablennamen zu verwenden, da es auch einen solchen Befehl gibt ... – aschipfl

+0

es hat funktioniert, vielen Dank –

Antwort

0

Sie haben diese EDIT %copy% und %target%

verwenden: @aschipfl wurde es zuerst. Entschuldige, dass du deinen Kommentar nicht zuerst angesehen hast.

+0

Ich denke du solltest @aschipfl Kredit geben, wenn du mit dem antwortest, was er in den Kommentaren mehr gesagt hat eine Stunde vor dir –

+0

@DennisvanGils Es tut mir so leid, ich war in Eile und habe nicht einmal auf die Kommentare. Wird jetzt bearbeiten. Nochmals Entschuldigung. –