假设文件 textFile.txt 中有文本。还假设我有一个程序跑步名为 aProgram.exe,它接受粘贴的文本。
创建脚本或批处理以捕获 textFile.txt 中的文本、打开 aProgram.exe 并粘贴剪贴板内容的最简单方法是什么?
组织方式不同,我该如何
- 将 textFile.txt 中的文本放入剪贴板
- 打开 aProgram.exe(已在运行)
- 粘贴我的剪贴板在aProgram.exe(这里我指的是 Control + V)
非常感谢您的帮助。
答案1
您可以使用这个带有 vbs 的混合球棒来完成此操作,只需保存为file.cmd
:
<!-- ::
@echo off & type "C:\folder\path\your\textFile.txt"| clip
"%windir%\system32\WScript.exe" "%~dpnx0?.wsf" && goto :EOF || rem :: -->
<job><script language="vbscript">Set WshShell=WScript.CreateObject("WScript.Shell")
WshShell.Run ("""C:\\Program Files\\aProgram.exe"""),9
WScript.Sleep 3000: WshShell.SendKeys "^+v": </script></job>
上面的代码打开你的程序,编辑下面的路径,并根据程序的位置使用\\
反而\
:
C:\\Program Files\\aProgram.exe
您还需要编辑您的路径textFile.txt
:
@echo off & type "C:\folder\path\your\textFile.txt" | clip
您可能需要调整超时:
WScript.Sleep 3000
进一步阅读:
[√]执行混合 Bat/脚本
在 PowerShell 中执行相同操作
Get-Content -path "C:\folder\path\your\textFile.txt" | Set-Clipboard
Start-Process -FilePath 'C:\\Program Files\\aProgram.exe'
Start-Sleep -m 700
$wshell = New-Object -ComObject wscript.shell
$wshell.AppActivate('add here the aProgram.exe windows name')
Start-Sleep -m 700
[System.Windows.Forms.SendKeys]::SendWait("^{v}")
您还需要编辑您的路径textFile.txt
:
Get-Content -path "C:\folder\path\your\textFile.txt" | Set-Clipboard
您可能需要调整超时:
Start-Sleep -m 700
进一步阅读:
[√]获取内容
[√]启动进程
[√]开始-睡眠
[√]获取剪贴板
[√]SendKeys 方法