나는 Hand-E-Food의 대답에 대해 공로를 인정하고 싶지 않지만, 그의 코드가 작동하지 않는 이유를 알아 냈고 그의 대답에 답할 수 없다. 그래서 여기있다. Copy
줄의 %StartupFolder%
변수 주위에 따옴표를 사용하는 대신 Set StartupFolder
경로 주위에 사용하십시오. 따라서 코드는 다음과 같습니다.
@Echo Off
CD /D %~dp0
Set StartupFolder="%AppData%\Microsoft\Windows\Start Menu\Programs\Startup"
If Exist %StartupFolder% Goto :FoundStartup
Set StartupFolder="%UserProfile%\Start Menu\Programs\Startup"
If Exist %StartupFolder% Goto :FoundStartup
Echo Cannot find Startup folder.
Exit /B
:FoundStartup
Copy "MyApp" %StartupFolder%
이 중 나를 위해
아무것도을 수행되지 않았기 때문에 나는이 알아 낸 유일한 이유는
, 그래서 나는 %StartupFolder%
주위에 따옴표를 제거 시도하고 그게이를 찾을 수 없다는 오류 메시지의 결과 폴더,하지만 적어도 나는 끝에서 무언가를하고 있다는 것을 알았다.일단 폴더 이름이 그 이름의 첫 번째 공란에 멈추었다 고 생각했기 때문에 틀린 폴더를 찾고 있다고 생각한 후에, 단순히 따옴표와 voila를 추가했습니다!
문제는 - 내 드라이브 문자가 D가 아닌 경우 무엇입니까? 고마워 ... "CD USB"만으로도 그럴 수 없어? 고마워! –
드라이브 문자 D :를 사용하지 않습니다. 그것은 스크립트가 위치한 드라이브 문자를 사용합니다.'% ~ 0dp'는 "이 스크립트의 드라이브와 경로"를 나타내는 코드입니다. 스크립트가 "E : \ MyInstaller \ Install.bat"이면,'% ~ dp0'는 "E : \ MyInstaller"입니다. 'Dir/D'는 "드라이브와 경로 변경"입니다. –
그리고 내 시작 앱이 .bat 인 경우에는 어떨까요? 작동할까요? thx ... 왜냐하면 아직 작동하지 않습니다. ( –