1

SendKeys vbScript 方法是否存在与操作系统相关的复杂性?我正在从 Windows XP 计算机上的 GE Ciplicity 4 项目升级到 Windows Server 2012 R2 虚拟机上的 GE Ciplicity 10 项目。

SendKeys 方法用于在屏幕打开时更改选项卡焦点。无论使用 SendKeys 发送什么密钥,该脚本现在都会无限期冻结。在操作系统更改之前,是否有人遇到过任何 SendKeys 冻结?

SendKeys “{TAB}”, 1

到目前为止我参考的文档:

http://proscada.ru/cimplicity/bce-lrf/lrfs/sendkeys.statement.htm

https://social.technet.microsoft.com/wiki/contents/articles/5169.vbscript-sendkeys-method.aspx

4

2 回答 2

0
 SendKeys "{TAB}1"

字符串(即文本)必须用引号引起来。

于 2018-02-19T01:38:33.193 回答
0

该问题被缩小到一个新的 Microsoft 安全功能,称为“用户访问控制 (UAC)”,该功能从 Windows Vista 开始。需要关闭该功能才能使 sendKeys 命令与 Cimplicity 一起正常工作。

至于 Cimplicity 之外的 sendKeys 性能,sendKeys 有几个不同的实现,具体取决于时间和操作系统。要强制 sendKeys 仅使用一种实现来获得一致的时序(如果一致性是一个问题),您可以更新 app.config 文件以通过添加以下内容来强制实现:

<appSettings>
    <add key="SendKeys" value="SendInput"/>
</appSettings>

参考:

https://msdn.microsoft.com/en-us/library/system.windows.forms.sendkeys.send(v=vs.110).aspx

于 2018-02-19T14:29:46.953 回答