为什么PID工作,但标题不起作用?

时间:2016-03-11 19:06:51

标签: 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 mining"

我将光标放在正确的字段中,点击 Ctrl + Alt + A 来运行脚本,并且!我不必100次输入公司名称。问题是,它仅在我输入PID而不是标题时起作用(例如,1111而不是"PRINT LABEL")。如果我在脚本中使用标题,它会将焦点带到IE,但会丢失光标位置。使用PID是可以的,我只是好奇为什么会发生这种情况。

更新:在玩了一些之后,我注意到IE有2个进程。如果我输入另一个进程PID,脚本的反应方式与我使用标题时相同。我现在更加困惑。我觉得有一个简单的答案,我只是没有看到它。

1 个答案:

答案 0 :(得分:0)

对于使用标题,字符串必须与窗口标题的开头匹配。此外,您将获得第一个匹配,因此您需要使字符串足够具体。 PID的设计和定义是唯一的,因此在AppActivate中使用PID时不会遇到这些问题。