是否存在与SendKeys vbScript方法相关的操作系统复杂性?我正在从Windows XP计算机上的GE Cimplicity 4项目升级到Windows Server 2012 R2虚拟机上的GE Cimplicity 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
答案 0 :(得分:0)
SendKeys "{TAB}1"
字符串(即文本)必须用引号括起来。
答案 1 :(得分:0)
此问题已缩小为以Windows Vista开头的名为“用户访问控制(UAC)”的较新Microsoft安全功能。需要关闭该功能才能使sendKeys命令与Cimplicity一起正常工作。
对于在Xenmplicity之外的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