Results 1 to 2 of 2

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Registered User tedych's Avatar
    Join Date: Nov:2003
    Location: Ïëîâäèâ
    Posts: 17,654

    Low level ïðåõâàùàíå íà mouse events

    Âúïðîñúò ìè å òàêúâ.
    Íå ñúì âåù â ñèñòåìíîòî ïðîãðàìèðàíå, îñâåí ïðåäè ãîäèíè ïîä DOS ñè ïèøåõ ðàçíè äðàéâåð÷åòà çà k/b/mouse na assembler+ïàñêàë êúäåòî íå áåøå òðóäíî, íî ïîä Windows íå ñúì çàäúëáàâàë òàêà.
    Íàñêîðî ñå ñäîáèõ ñ íîâà Logitech ìèøêà (ïúðâàòà ìè Logitech), è ñå ñáëúñêàõ çà ïúðâè ïúò ñ SetPoint. ßñíî å êàêâà áîçà å òîÿ äðàéâåð, è âúïðåêè ÷å çàñåãà îñâåí åäíà ìèçåðèÿ, ïðîáëåìè îñîáåíè íå ñúì èìàë, îñâåí áúãîâåòå â êîíòðîëíèÿ ïàíåë.
    Òà õðóìíà ìè äàëè êîãàòî åäíà ìèøêà ðàáîòè ñàìî ñ generic äðàéâåðà íà Windows (XP/2003) è èìà 7/9 áóòîíà, ìîæå äà ñå íàïðàâè íÿêàêúâ low level mouse hook, êîéòî äà ïðåõâàíå íàïðàâî ñêàíèðàùèòå êîäîâå, èäâàùè îò ìèøêàòà, èëè àêî ñàìèÿ Windows ïðåõâàùà äîðè íåïîçíàòèòå áóòîíè (òîé âèæäà äîêîëêîòî çíàì äî 5 áóòîíà ñëåä òîâà íå ãè ðàçïîçíàâà) è ãè çàêàðâà â îèáêíîâåí trap íåïðàâåù íèùî, äà ñå ïðåõàíàò òèÿ ñúáèòèÿ çà íåïîçíàòèòå áóòîíè, è öÿëàòà ðàáîòà å äà èì ñå äàäå ôóíêöèÿ äà ïðàâÿò íåùî, îò ïðîãðàìêàòà, êîÿòî åâåíòóàëíî áèõ íàïèñàë.

    Çà ñâåäåíèå, ïðåäè èìàõ åäíà êëàâèàòóðà Compaq ñ äîïúëíèòåëíè äåñåòèíà áóòîíà ãîðå, êîèòî â Windows íå ïðàâåõà àáñ. íèùî, òà âçåõ ÷å ñ íàïèñàõ ïðîãðàìà, êîÿòî ñå çàêà÷à çà êëàâèàòóðàòà ñ îáèêíîâåí keyboard hook, òàì ïîíå Windows ïðàùàøå íÿêàêâè ñêàíèðàùè êîäîâå, êîèòî ñ îáèêíîâåí learning (íàòèñêàì áóòîí, ïðîãðàìàòà âèæäà è çàïîìíÿ êîäà, è íà áóòîíà ìîæåõ äà çàäàâàì ðàçíè äåéñòâèÿ êàòî ñèìóëèðàíå íà hotkey è ò.í.) èì äàâàõ äà ïðàâÿò íåùî ïîëåçíî.  ñëó÷àÿ äðàéâåðà ïðàùàøå òèÿ êîäîâå è ìîÿòà ïðîãðàìà ìîæåøå äà ãè ðàçãðàíè÷àâà. Íå ñúì ñèãóðåí äàëè ïî ïðèíöèï êëàâ. äðàéâåð ãè å çàõâàùàë ïî-íèñêî è äà ãè å ïîäàâàë ïðîñòî íà ïðîãðàìèòå äà ïðàâÿò ñ òÿõ êâîòî èñêàò (à ïðîñòî äà ñúì íÿìàë ïðîãðàìà, êîÿòî äà ãè ïîçíàâà, ìàêàð ÷å òå áÿõà íÿêàêâè www, mail è ò.í.), èëè ïðîñòî ñúì õâàùàë àç raw êîäîâåòå, çà ùàñòèå.

    Çà ìèøêàòà äàëè òîâà å âúçìîæíî áåç èíñòàëèðàíå íà äðàéâåð, äà õâàùàì êîäîâåòå ïðàùàíè îò ìèøêàòà (èëè îò generic äðàéâåðà íà Win) äîðè çà íåïîçíàòèòå íåìó áóòîíè?
    Öÿëàòà èäåÿ å äà ñè íàïðàâÿ 'ñàìîîáó÷àâàùà' ñå ïðîãðàìêà, íà êîÿòî êàòî íàòèñíà áóòîíà, òÿ äà ãî çàïîìíè è äà é äàì íåùî äà ïðàâè ñ íåãî, êàêòî ñòàíà ñ êëàâèàòóðàòà. Äà ðàçêàðàì òúïèÿ è bloat-íàò SetPoint, òîâà å

    Ìåðñè ïðåäâàðèòåëíî íà çíàåùèòå.

    P.S. Äîðè äà ìå óïúòèòå êúì íÿêàêâà ñúùåñòâóâàùà ïðîãðàìêà, êîÿòî äà ãî ìîæå òîâà, ùå å ñóïåð, çàùîòî àç íå íàìåðèõ. Èëè êîìïîíåíò çà Delphi, êîéòî äà ñå çàêà÷è êúì ìèøêàòà è äà õâàùà âñåêè áóòîí, íåçàâèñèìî äàëè Âèíäîâñ ãî ðàïçîçíàâà èëè íå.

  2. #2
    Áåëûé è ïóøèñòûé Bombera's Avatar
    Join Date: Jul:2001
    Location: Êàçàíëúê 4EVA
    Posts: 13,833
    WH_MOUSE_LL
    Windows NT/2000/XP: Installs a hook procedure that monitors low-level mouse input events. For more information, see the LowLevelMouseProc hook procedure

    ß ïîòúðñè â MSDN-a äàëèÿ íÿìà äà òè å ïîëåçíî òîâà, àêî âå÷å íå ñè ãî ïðî÷åë.  êîëáåê ïðîöåäóðàòà èìà åäíà ñòðóêòóðà ñ ìåñèäæè îò äîïúëíèòåëíèòå áóòîíè, êîèòî ìàé ñà ñàìî äâà îùå. Îïèòàé äà âèäèø äàëè íå èäâà íåùî èíòåðåñíî â dwExtraInfo ÷ëåíà.

    Àêî íå å, òîãàâà ñàìî ôèëòúð äðàéâåð ìîæå äà îïðàâè íåùàòà. Ãëàâîáîëèå.
    EVGA X299 FTW K|i9-7960X@4.7|4x8 Patriot Viper Steel 4000|GTX 1660 Ti|970 EVO 1 TB|Seasonic Focus GX-1000|Xigmatek Elysium|Êèëî è ïîëîâèíà âîäà
    Rampage IV Extreme BE|E5-1680v2@4.7|4x4 HyperX 1866|Cougar Aqua 240|GTX 1050 Ti|970 EVO 1/4 TB|CM 850 SilentPro|HAF-X|Áåç èñòèíñêî âîäíî

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Copyright © 1999-2011 Õàðäóåð ÁÃ. Âúçìîæíî å ñúäúðæàíèåòî íà òàçè ñòðàíèöà äà å îáåêò íà àâòîðñêè ïðàâà.
iskamPC.com | mobility.BG | Bloody's Techblog | Êðèïòîâàëóòè è ìàéíèíã | 3D Vision Blog | Ìàãàçèí çà åëåêòðîííè öèãàðè