Ctrl2Cap v2.0

Készítette: Mark Russinovich

Közzétéve: 2006. november 1.

DownloadCtrl2Cap letöltése (48 KB)

Introduction

A Ctrl2cap egy kernel módú eszközillesztő, amely szűri a rendszer billentyűzetosztály-illesztőprogramját, hogy a caps-lock karaktereket vezérlőkarakterekké alakítsa. Kapcsolatok, mint én, hogy migrált NT UNIX használják a vezérlőkulcsot, ahol a caps-lock kulcs található a standard PC billentyűzet, így egy segédprogram, mint ez elengedhetetlen a szerkesztés jólétét.

Telepítés és használat

Telepítse a Ctrl2cap parancsot, amely a "ctrl2cap /install" parancsot futtatja abból a könyvtárból, amelybe a Ctrl2cap-fájlokat kibontotta. Az eltávolításhoz írja be a "ctrl2cap /uninstall" szöveget.

A Ctrl2cap működése

NT 4 Ctrlcap valójában meglehetősen triviális. Egyszerűen csatolja magát a billentyűzetosztály-illesztőprogramhoz, hogy elfogja a billentyűzet olvasási kéréseit. Minden kéréshez egy I/O-befejezési visszahívást tesz közzé, amelynél betekint a visszaadott szkennelési kódba. Ha caps-lockról van szó, a ctrl2cap bal oldali vezérlőelemre vált.

A Win2K Ctrl2cap egy WDM-szűrőillesztő, amely a billentyűzetosztály-eszköz veremét rétegezi a billentyűzetosztály-eszköz fölött. Ez ellentétben áll a Win2K DDK kbfiltr-példájával, amely az i8042-porteszköz és a billentyűzetosztály-eszköz között rétegzi magát. Úgy döntöttem, hogy réteg tetején a billentyűzet osztály eszköz több okból:

  • Ez azt jelenti, hogy a Ctrl2cap IRP_MJ_READ elfogási és kezelési kód meg van osztva az NT 4 és a Win2K verziók között.
  • Nem kell INF-fájlt adnom, és a felhasználónak végig kell mennie a Eszközkezelő a Ctrl2cap telepítéséhez – egyszerűen módosítom a megfelelő beállításjegyzék-értéket (a billentyűzetosztály eszközeinek HKLM\System\CurrentControlSet\Control\Class UpperFilters értéke).

Az én megközelítésem hátránya (és ez az Ön nézőpontjától függően előnyt vagy hátrányt jelent):

  • Mivel nem telepítek INF-fájllal a Eszközkezelő keresztül, a rendszer nem figyelmezteti a felhasználót, hogy a Ctrl2cap illesztőfájlt a Microsoft nem digitálisan írta alá.

Ebben a konkrét esetben úgy éreztem, hogy az előnyök meghaladják a hátrányokat. Mielőtt azonban a Win2K-billentyűzetszűrőt a Ctrl2cap-ra modellezné, határozottan javaslom, hogy tanulmányozza a Kbfiltr-példát a Win2K DDK-ból. A kbfiltr kulcsbemeneti sorrendben lévő elfogási pontja megkönnyíti a kbfiltr számára a billentyűleütések bevitelét a bemeneti adatfolyamba.

További információ

A szűrőillesztők írásáról (azok az illesztőprogramok, amelyek más illesztőprogramokhoz csatolják magukat, hogy lássák a bemenetüket és/vagy kimenetüket) az alábbi forrásokból tájékozódhatnak:

  • A Windows NT és a Windows 2000 DDK minta \src\storage\filter\diskperf
  • A Windows 2000 DDK minta \src\input\kbfiltr
  • "A Windows NT fájlrendszer vizsgálata" , Mark Russinovich, Dr. Dobb naplója, 1997. február
  • A mellékelt fájlrendszerszűrő-illesztőprogram, a Filemon

DownloadCtrl2Cap letöltése (48 KB)

Futtatás:

  • Ügyfél: Windows Vista és újabb.
  • Kiszolgáló: Windows Server 2008 vagy újabb.