![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проверка Мыши На Существование [D6, Win2k]
maxXP © (2004-09-03 16:25:00)Здраствуйте мастера. Вопрос такой как можно определить вставленна ли мышь в пс/2 или нет, а если её вытащили, то произвести действие(скажем вой сирены).
А нужно это, чтобы ушлые студенты не "прихватизировали" новенькие оптические мышки.
P.S.Прикрутить провод к столу нельзя, столы жалко :))
GuAV (2004-09-05 13:44:00) [1]А ведь досовский драйвер от ms реализует сабж, более того определяет COM или PS/2
ПЛОВ (2004-09-05 13:10:00) [2]А пошерстить немного Сеть конечно в лом... Встречал я (и не раз) всяких "охранников" девайса (для клубов в первую очередь), они и определят есть мышь (клавиатура, процессор :) или его стянули шизанутые на Квейке детишки), и сирену включат, и вызовут национальную гвардию при поддержке стратегической авиации :) Правда бесплатного такого софта не видел, так что или платите деньги или ... сами знаете что :)))
DeadMeat (2004-09-05 11:43:00) [3]Сделать как в магазинах с одеждой...
Встроить в мыши датчики...
---
...Death Is Only The Begining...
Anatoly Podgoretsky (2004-09-05 11:27:00) [4]Fay © (03.09.04 17:25) [7]
А раз есть то не стоит и волноваться :-)
maxXP (2004-09-05 00:20:00) [5]Амбала нет -есть тока новые мышки:)
Agent13 (2004-09-03 17:31:00) [6]maxXP, не парься. Такой вопрос уже поднимался, и насколько я помню, пришли к выводу, что лучший способ - поставить на выходе амбала. Поскольку стопроцентного способа определить наличие мыши вроде как и не существует.
Fay (2004-09-03 17:25:00) [7]Народ, не парьтесь. Я проверил - мышь существует.
clickmaker (2004-09-03 16:55:00) [8]
> [5] ssk © (03.09.04 16:50)
Эта функция проверяет наличие рабочего драйвера мыши, а воткнут или нет проводок - ей глубоко фиолетово
ssk (2004-09-03 16:50:00) [9]>clickmaker
а что будет? скажи, а то мне уже ничего не хочется делать под конец рабочего дня. помнится я пробовал это делать, мышь находится. но чтоб вот так... смык-смык... не пробовал :-)
clickmaker (2004-09-03 16:35:00) [10]
> [1] ssk © (03.09.04 16:28)
А ты попробуй вызови эту функцию, а потом вынь мышь и еще раз вызови
GuAV (2004-09-03 16:33:00) [11]
> Зафигачь мышинный провод прямо в корпус без разьема
А я с кусачками прийду, и потом я и так оторвать и перегрызть могу :)
clickmaker (2004-09-03 16:30:00) [12]Зафигачь мышинный провод прямо в корпус без разьема
ssk (2004-09-03 16:28:00) [13]вот выдрал из какого-то фака
Установлена ли на его компьютере мышка (Mouse) и сколько у нее кнопок.
(Не забудьте добавить модуль "ShellAPI" в список uses )
Функция MouseExist :
function MouseExist : boolean;
begin
if (GetSystemMetrics(SM_MOUSEPRESENT) <> 0) then
Result := True
else
Result := False;
end; {MouseExist}
Эта функция проверяет - инсталлирована ли мышка в вашей системе, она возвращает TRUE , если мышка присутствует или FALSE, в противном случае.
Функция MouseButtonsCount:
function MouseButtonsCount : integer;
begin
Result := GetSystemMetrics(SM_CMOUSEBUTTONS);
end; {MouseButtonsCount}
Эта функция возвращает количество доступных кнопок мыши. Если мышка недоступна, то функция возвращает значение 0 (ноль).
Пример использования:
Протестируйте данные функции:
1. Добавьте Кнопку (TButton) и Метку (TLabel) к основной форме (TForm), щелкните на кнопке и добавьте следующий код к ее событию "OnClick" :
begin
if (MouseExist) then
Label1.Caption := 'Мышка инсталлирована с ' +
IntToStr(MouseButtonsCount) + ' доступными кнопками ...'
else
Label1.Caption := 'Мышка не инсталлирована ...';
end;
2. Запустите приложение (нажав F9) и щелкните на кнопке. Заголовок метки отобразит сообщение, что мышка инсталлирована и имеет столько-то кнопок или (в противном случае) , что мышка не инсталлирована.