Announcement

Collapse
No announcement yet.

GetKeyboardState

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • GetKeyboardState

    kann man mit GetKeyboardState systemweit abfragen ob eine taste gedrückt ist?

    gruß

    markus
    Herzliche Grüße

    Markus Lemcke
    barrierefreies Webdesign

  • #2
    Ich habe da noch eine andere function, die eigendlich dafuer besser waere, habe sie aber noch nicht getestet: <br>
    Get(Async)KeyState <br>
    (warum das ganze keyboard abfragen, wenn eine Taste reicht

    Comment


    • #3
      hi,

      ja ich will bestimmte tastenabfragen (f1-f12, 0-9, num0 - num9)!
      geht das damit?

      gruß

      marku
      Herzliche Grüße

      Markus Lemcke
      barrierefreies Webdesign

      Comment


      • #4
        Nein, da GetKeyboardState() nur den virtuallen Tastenstatus des aktuellen Threads abfragt, zudem muss dieser Thread einen Messagequeue besitzen sonst machts keinen Sinn.

        Die Idee mit getAsyncKeyState() scheint im ersten Moment die beste zu sein, hat aber einen Hacken. Nutzt z.B. ein Windows Control diese Funktion um z.B. F10 abzufragen und Du hast vorher die gleiche taste abgefragt dann ist für dieses Control F10 nicht gedrückt. Meint: GetAsynKeyState() fragt ab ob eine Taste gedrückt ist und löscht intern dieses Flag. Ein erneuter Aufruf würde also zurückgeben das F10 gedrückt war und nicht ist.

        Gruß hage

        Comment


        • #5
          hi hagen,

          wenn die taste gedrückt ist, kann ich danach den flag nicht von hand wieder setzen?

          gruß

          marku
          Herzliche Grüße

          Markus Lemcke
          barrierefreies Webdesign

          Comment


          • #6
            Mit SetKeyboardState() ja, gilt aber das Gleiche wie für GetKeyboardState()

            Gruß Hage

            Comment


            • #7
              also eine optimal lösung ohne hook gibt es nicht oder?

              gruß

              marku
              Herzliche Grüße

              Markus Lemcke
              barrierefreies Webdesign

              Comment


              • #8
                Doch, optimal und von M$ so vorgesehen wäre ein Treiber, *.VXD oder *.SYS.

                Gruß Hage

                Comment


                • #9
                  hä? das verstehe ich jetzt nicht!
                  bitte etwas genauer!

                  gruß

                  marku
                  Herzliche Grüße

                  Markus Lemcke
                  barrierefreies Webdesign

                  Comment


                  • #10
                    Der richtigste Weg <b>systemweit den Tastenstatus abzufragen</b> besteht darin einen Virtuellen Gerätetreiber, kurz VXD für Windows 95,98 und ME oder einen System Gerätetreiber, kurz SYS für Windows NT oder 2000, zu programmmieren.

                    Gruß Hage

                    Comment


                    • #11
                      hu baby!! und wie macht man sowas???? *grübel
                      Herzliche Grüße

                      Markus Lemcke
                      barrierefreies Webdesign

                      Comment


                      • #12
                        Indem man sich das DDK (Device Driver Kit) bei M$ holt, MS-C lernt und dann programmiert.

                        Gruß Hage

                        Comment

                        Working...
                        X