【发布时间】:2014-04-14 11:13:49
【问题描述】:
我正在尝试使用 WScript Sendkeys 发送字符“ä”。似乎它不起作用。我找到了一个帖子Does or Can VBscript's SendKeys support Unicode?
我的代码:
Set sh = WScript.CreateObject("WScript.Shell")
sh.Run "notepad.exe", 9
WScript.Sleep 1000 'wait a while to load notepad app'
sh.SendKeys " äää Hello World!" //buggy line
sh.SendKeys "{ENTER}"
WScript.Sleep 100'
sh.SendKeys "^p"
但我无法理解解决方案。如果您用简单的代码(用于解决方案)教我,那就太好了。我不擅长 WScript(因为它不是我的领域)。 我知道我在乞求代码(请原谅我)。但请理解我的情况。
提前非常感谢!!
【问题讨论】:
-
解决方案简单地说明了 SendKeys 被微软引入 Unicode 的方式所削弱。具体来说,您遇到了 Windows 窄字符集不应该是 UTF-8 的问题。还提到的解决方法是不使用 WScript,而是直接使用本机范围的 API。
标签: unicode vbscript sendkeys wsh