그래서 저는 친구의 PC에 대한 "수정"을 프로그래밍하고 있으며 VBS를 사용하여 CMD 프롬프트를 열고 친구의 AppData
폴더에 액세스해야 합니다. 그런데 VBS로 명령 프롬프트를 보내면 cd %appdata%
이렇게만 나옵니다 cd appdata
(백분율 기호 없이).
이것은 VBS에 대한 내 스크립트입니다.
Set WshShell = WScript.CreateObject("WScript.Shell")
strName = wshShell.ExpandEnvironmentStrings( "%USERNAME%" )
Wshshell.run "cmd"
Wshshell.sendkeys " "
Wscript.sleep 200
Wshshell.sendkeys "cd %appdata%"
Wshshell.sendkeys "{ENTER}"
이 문제를 어떻게 해결할 수 있나요?
답변1
다른 곳에서 명시적으로 언급된 이 솔루션을 찾을 수 없었습니다.SendKeys 참조힌트를 주었습니다. %
기호를 중괄호( )로 묶어야 합니다 {}
. 그래서 당신의 %
징후는 {%}
.
전. VBS(Visual Basic Script)의 리터럴 백분율
Set WshShell = WScript.CreateObject("WScript.Shell")
strName = wshShell.ExpandEnvironmentStrings( "%USERNAME%" )
Wshshell.run "cmd"
Wshshell.sendkeys " "
Wscript.sleep 200
Wshshell.sendkeys "cd {%}appdata{%}"
Wshshell.sendkeys "{ENTER}"
답변2
친구 PC의 사용자 이름을 알고 있다면 다음을 수행할 수 있습니다.
Set WshShell = WScript.CreateObject("WScript.Shell")
strName = wshShell.ExpandEnvironmentStrings( "%USERNAME%" )
Wshshell.run "cmd"
Wshshell.sendkeys " "
Wscript.sleep 200
Wshshell.sendkeys "cd "C:\Users\User\AppData\Roaming""
Wshshell.sendkeys "{ENTER}"
여기의 사용자를 친구 컴퓨터의 실제 사용자 이름으로 바꾸세요. 도움이 되었기를 바랍니다.
:)