Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Keyboard LED Control (https://javascript.ru/forum/misc/17986-keyboard-led-control.html)

ave 11.06.2011 16:25

Keyboard LED Control
 
"Keyboard LED Control"

На Javascript можно изменять состояние светодиодов клавиатуры без нажатия клавиш?
Если да, то подскажите, пожалуйста, скрипт по-проще.

Все, что я смог найти на эту тему:

1. "Скажи Javascript, нажат ли Caps Lock?"
http://www.tigir.com/capslockdetect.htm

2. "Handling Keyboard Shortcuts in JavaScript"
http://www.openjs.com/scripts/events...cuts/index.php

3. "Keyboard LED Control V1.09"
http://www.fadsoft.net/LEDControl.htm

Kolyaj 11.06.2011 16:47

Нет.

ave 11.06.2011 17:40

Цитата:

Сообщение от Kolyaj (Сообщение 108239)
Нет.

Спасибо за ваш ответ.
Если я не ошибаюсь, пример из 3-й ссылки сделан на Delphi.
Почему на Delphi можно, а на Javascript нет? В чем выражается ограничение?

Kolyaj 11.06.2011 17:48

В том, что JavaScript работает в браузере. Вы же не хотите, чтобы после посещения какого-нибудь сайта у вас все лампочки на клавиатуре замигали?

ave 11.06.2011 18:02

Все мне не надо, мне одной достаточно. Но удаленно через инет - да, хочу. Не совсем то, что вы описали, но что-то подобное. И мне это не для развлечения надо. Как браузер это ограничивает?
Javascript может передать управление чему-то другому?

По теме Keyboard LED еще нашел:

"Управление клавишами NumLock, CapsLock и ScrollLock"
http://www.manhunter.ru/assembler/183_upravlenie_klavishami_numlock_capslock_i_scrol llock.html

Пример из Delphi как менять LED:
http://delphi-faq.zoxt.net/282.htm

Цитата:

VAR
KS: TKeyboardState;
begin GetKeyboardState(KS);
KS[020] := KS[020] XOR 1; //Caps Lock
KS[144] := KS[144] XOR 1; //Num Lock
KS[145] := KS[145] XOR 1; //Scroll Lock
SetKeyboardState(KS);
end;
Может, на JavaScript кто-то знает, как сделать что-то подобное. Или как обойти ограничение браузера.

monolithed 11.06.2011 20:30

Цитата:

Сообщение от ave
Может, на JavaScript кто-то знает, как сделать что-то подобное.

вам же сказали, что нет
Цитата:

Сообщение от ave
Или как обойти ограничение браузера.

для IE через COM-объекты возможно.
Цитата:

Сообщение от ave
Пример из Delphi как менять LED:

JavaScript, изначально не создавался для таких задач. Поэтому проанализируете внимательно все ответы

ave 11.06.2011 21:08

Я видел ответ "нет" - не слепой же. Но проблему решить надо. И она будет решена (через Javascript или через что-то другое). Иногда одни програмисты делают то, на что не способны другие. Это я не в обиду комуто пишу. Просто бывает.

Цитата:

Сообщение от monolithed (Сообщение 108255)
для IE через COM-объекты возможно.

Об этом по-подробней можете рассказать?

Если не через Javascript, то может через PHP можно как-то реализовать (вызывать) функцию MSDN "keybd_event"?

MSDN "keybd_event Function":
http://msdn.microsoft.com/en-us/libr...(v=VS.85).aspx
http://vsokovikov.narod.ru/New_MSDN_...eybd_event.htm

monolithed 11.06.2011 22:27

Цитата:

Сообщение от ave
Иногда одни програмисты делают то, на что не способны другие.

На это не способны ни JavaScript ни ActionScript и тем более не PHP. Очень сильно сомневаюсь, что даже Java позволит вылезти из своей "песочницы".
Цитата:

Сообщение от ave
Но проблему решить надо.

Если договоритесь с разработчиками браузеров, то конечно
Цитата:

Сообщение от ave
Об этом по-подробней можете рассказать?

для этого нужно найти VBScript программиста, который и расскажет...
Цитата:

Сообщение от ave
Если не через Javascript, то может через PHP

Нет

ave 12.06.2011 00:10

Цитата:

Сообщение от monolithed (Сообщение 108267)
Очень сильно сомневаюсь, что даже Java позволит вылезти из своей "песочницы".

Оказывается позволяет!

Цитата:

Сообщение от monolithed (Сообщение 108267)
для этого нужно найти VBScript программиста, который и расскажет...

Нашел на этом же форуме сообщение от Gvozd:
http://javascript.ru/forum/misc/3235...brauzerom.html

Проверил - работает! Лед тронулся... ) Дальше дело техники.
А скрипт мне нужен для удаленного програмирования моей HID клавиатуты.

P.S.
Надо же, целый день во всем нете искал и все равно, то что мне нужно было, здесь нашел. )

Gvozd 12.06.2011 00:21

ave,
может быть вы не обратили внимание, но там указано решение под WSH, а не под браузер.

в идеальном случае, вы сможете его запустить ТОЛЬКО в IE, и только если пользователь сознательно разрешит браузеру выполнять потенциально опасный код с вашего сайта.

То есть обычный пользователь(даже сидящий под IE, хотя таких далеко не 100%) не сможет воспользоваться вашим решением, так как либо не сумеет настроить нужным образом браузер, либо не станет, потому что это опасная настройка, и чтобы ее включить, нужно быть сумасшедшим.

Но если вы хотите полюбоваться в одиночку, либо с самыми близкими друзьями, своим творением, то почему бы и нет)


Часовой пояс GMT +3, время: 08:32.