【问题标题】:Is there a way to make a batch file to autofill / auto populate a file path into another application which opens via the batch file?有没有办法让批处理文件自动填充/自动填充文件路径到另一个通过批处理文件打开的应用程序中?
【发布时间】:2020-01-30 15:45:44
【问题描述】:
cd /D %UserProfile%\AppData\Local\Citrix\AGEE
Start epaPackage.exe

我正在尝试自动化手动浏览批处理文件的文件路径的过程。

文件路径为"%UserProfile%\AppData\Local\Citrix\EPAPack"

图片显示了批处理文件打开的应用程序及其要求的文件路径,或手动导航到文件夹的选项

【问题讨论】:

  • 批处理文件使用 CLI,它们不与 GUI 应用程序交互,除非您使用另一种可以的脚本语言。你不能只使用剪贴板吗?例如Echo(%LocalAppData%\Citrix\EPAPack|Clip 然后你可以直接 Ctrl+V 将其粘贴到 GUI 对话框中。
  • 是的,我想我可能不得不这样做。我只是想让它尽可能用户友好,因为我有很多用户不太会使用计算机!

标签: windows batch-file command-line


【解决方案1】:

您可以使用 VBScript 自动执行任务:

<!-- :: Begin Batch
@Echo Off
cd /D %UserProfile%\AppData\Local\Citrix\AGEE
Start epaPackage.exe
Cscript //NoLogo "%~f0?.wsf" //job:vbs
Exit /B
-->
<package>
  <job id="vbs">
    <script language="vbscript">
      Wscript.Sleep 2000
      Dim WshShell
      Set WshShell = CreateObject("Wscript.Shell")
      WshShell.AppActivate("epaPackage")
      Wscript.Sleep 2000
      Set UserProfile = WshShell.ExpandEnvironmentStrings("%USERPROFILE%")
      Set StrPath = UserProfile & "\\Appdata\\Local\\Citrix\\EPAPack"
      WshShell.SendKeys(StrPath)
      WshShell.SendKeys("{DOWN}")
      WshShell.SendKeys("{ENTER}")
    </script>
  </job>
</package>

【讨论】:

  • 感谢您的帮助。我刚刚试过这个,同样的弹出窗口显示,该字段保持空白。有什么可以补充的吗?
  • @WasifHasan 也许需要第一次发送 {TAB} 键(1x 或 2x)才能进入输入区域...或者不!?
  • @不是我,是的,但是发到哪里?
  • @WasifHasan 1st sendkey 使用发送键选项卡!
猜你喜欢
  • 2021-05-12
  • 2012-06-15
  • 1970-01-01
  • 2020-09-24
  • 1970-01-01
  • 2020-07-20
  • 1970-01-01
  • 2017-08-09
  • 2016-04-10
相关资源
最近更新 更多