Vbscript 为什么PID有效,而标题无效?

Vbscript 为什么PID有效,而标题无效?,vbscript,Vbscript,长话短说,我在工作中通过一个通过IE运行的专有程序打印运输标签。一个常见的托运人是Caterpillar Global Mining,所以我编写了一个脚本来输入该字段 Set wshShell = WScript.CreateObject("WScript.Shell") WScript.Sleep 100 wshShell.AppActivate ("PRINT LABEL") WScript.Sleep 100 wshShell.SendKeys "caterpillar global mi

长话短说,我在工作中通过一个通过IE运行的专有程序打印运输标签。一个常见的托运人是Caterpillar Global Mining,所以我编写了一个脚本来输入该字段

Set wshShell = WScript.CreateObject("WScript.Shell")
WScript.Sleep 100
wshShell.AppActivate ("PRINT LABEL")
WScript.Sleep 100
wshShell.SendKeys "caterpillar global mining"
我将光标放在正确的字段中,按Ctrl+Alt+A运行脚本,然后砰的一声!我不必把公司的名字打100次。问题是,它只在我输入PID而不是标题时起作用(例如,
1111
而不是
“打印标签”
)。如果我在脚本中使用标题,它会将焦点转移到IE,但会丢失光标位置。使用PID对我来说是可以的,我只是好奇为什么会发生这种情况


更新:在玩了更多的游戏后,我注意到IE有两个进程。如果我输入另一个进程PID,脚本的反应与我使用标题时的反应相同。我现在更糊涂了。我觉得有一个简单的答案,我就是看不到。

要使用标题,字符串必须与窗口标题的开头匹配。此外,您将获得第一个匹配项,因此需要使字符串足够具体。PID在设计和定义上都是独一无二的,因此在
AppActivate

中使用PID时不会遇到这些问题。我想使用标题,因为每次重新启动IE时,我都需要输入一个新的PID。我已经到了它将焦点带回IE的地步,但它仍然失去了光标的位置。有办法解决这个问题吗?