我正在尝试使用Windows脚本宿主(在任何浏览器之外,是我的意图)来执行一个简单的JScript来读取用户的按键,但找不到相应的方法:
function tap(e) {
...code...
}
document.onkeypress = tap;
我不是Windows系统编程人员(但是经验丰富的程序员)所以我不熟悉ActiveX小工具和服务等。 WScript或WSShell不提供打开窗口(而不是“文档”)的方法吗?
或者我是否被迫从浏览器运行它以使其工作?似乎过度杀伤......
答案 0 :(得分:0)
尝试
var tap = function (e) {
...code...
}
document.onkeypress = tap;
答案 1 :(得分:0)
Windows Scripting Host不提供任何UI,至少不提供GUI。
如果您使用CScript.exe
,则可以使用StdIn,StdOut等。请参阅Wscript.StdIn.Read method。
这些是Windows Scripting Host可用的大多数对象:main WSH objects,字典和FileSystem对象派上用场:Dictionary and FileSystem objects
但是如果你想要一个GUI,那么你可以在MSHTA.exe中运行一个HTA文件并使用HTML / CSS / JavaScript来处理你的UI需求并仍然使用WSH对象。
过度破坏?好吧,从您的UI列出您想要的内容。现在,您必须提供访问所有这些功能的机制。您的示例代码显示您希望以HTML-DOM-via-JavaScript方式执行此操作。因此,您需要HTML解析器和DOM支持。看起来您想要访问此时浏览器提供的大部分内容。
答案 2 :(得分:0)
我认为Windows脚本宿主不提供键盘挂钩的API。最可靠的方法是创建一个implements a keyboard hook的COM组件(例如,在C#/ C ++中),并根据需要在JScript中使用该对象的实例。