Ну я же подсказывал - WinAPI
Ну хорошо. Я изготоаил dll-ку gkbl.dll. Ее нужно положить рядом с экзешником, иначе в скрипте нужно прописать полный путь к ней (желательно без русских символов, во избежание...)

Код:
createTextField("out", 1, 20, 20, 200, 20);
out.type = "dynamic";
out.border = true;
var dll = new mdm.DLL("gkbl.dll");
var parameter = dll.addParameter("string", "");
go.onRelease = function() {
var res = dll.call("string", "GetKBL");
out1.text = res*1;
};
В поле out должно появиться число: 419 - если в данный момент задействована русская раскладка, 409 - если английская.
Это есть имена раскладок в винде.
На счет бродкастера нет пока идей, кроме тупого опроса по интервалу текущей раскладки с помощью этой функции (var res = dll.call("string", "GetKBL")) но это не есть красиво..
Файл с dll-кой во вложении.
PS. C вложением проблема - не хочет никак вкладываться.

Давай на e-mail сброшу
а ... заработало вроде