Así que estoy programando una "solución" para la PC de mi amigo y necesito usar VBS para abrir el indicador CMD y acceder a sus AppData
carpetas. Pero cuando envío cd %appdata%
al símbolo del sistema con VBS, solo aparece así cd appdata
(sin signos de porcentaje).
Este es mi script para 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}"
¿Cómo puedo arreglar esto?
Respuesta1
No pude encontrar esta solución mencionada explícitamente en otra parte, pero estoReferencia de envío de clavesdio una pista. Debe envolver el %
letrero entre llaves ( {}
). Entonces tus %
señales serían {%}
.
ex. Porcentajes literales en Visual Basic Script (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}"
Respuesta2
Si conoce el nombre de usuario de la PC de su amigo, puede hacer esto:
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}"
Reemplace Usuario aquí por el nombre de usuario real de la computadora de su amigo. Espero que te ayude.
:)