我正在使用wshShell.SendKeys从HTAinput一些文本到网站,当我目前的键盘布局不是英文,wshShell.SendKeys的结果是意料之外的。
我希望我的函数检查语言是英语,否则发送ALT + SHIFT将其更改为英语。对我来说,困难的部分是find一个返回当前键盘布局的函数。
如果有人熟悉这样做,我会很高兴知道..
谢谢,Rotem
好吧,我用“暗影向导”的帮助
这是代码,如果有人想知道(=
谢谢!
var lastKeyPressed = 0; function sendKey() { var WshShell = new ActiveXObject("WScript.Shell"); WshShell.SendKeys( 'a' ); } function getCurLayout() { sendKey(); setTimeout("lastKeyLang()",10); } function lastKeyLang() { if( lastKeyPressed == 97 ) alert( 'EN' ); else alert( 'HE' ); } document.onkeypress = saveLastKey; function saveLastKey() { lastKeyPressed = window.event.keyCode; }
发送“A”到文本框,像这样读回来:
nValue = oTextbox.value.charCodeAt(0);
如果nValue
是65,布局是英文的,否则不是也可能是英文发送。