Ctrl2Cap v2.0

Od Mark Russinovich

Publikováno: 1. listopadu 2006

DownloadStáhnout Ctrl2Cap(48 kB)

Úvod

Ctrl2cap je ovladač zařízení v režimu jádra, který filtruje ovladač třídy klávesnice systému za účelem převodu znaků caps-lock na řídicí znaky. Lidé jako já, který migroval do NT z systém UNIX se používají k tomu, aby měl ovládací klávesu umístěnou na standardní počítačové klávesnici, takže nástroj, jako je tento, je nezbytný pro naše úpravy pohody.

Instalace a použití

Nainstalujte ctrl2cap spuštěním příkazu "ctrl2cap /install" z adresáře, do kterého jste rozbalili soubory Ctrl2cap. Chcete-li odinstalovat, zadejte ctrl2cap /uninstall.

Jak ctrl2cap funguje

Na NT 4 Ctrlcap je ve skutečnosti docela triviální. Jednoduše se připojí k ovladači třídy klávesnice, aby zachytil požadavky na čtení klávesnice. U každého požadavku publikuje zpětné volání dokončení vstupně-výstupních operací, v jakém okamžiku přebírá náhled na vrácený kód scancode. Pokud se stane, že se jedná o caps-lock, ctrl2cap ho změní na levý ovládací prvek.

V systému Win2K Ctrl2cap je ovladač filtru WDM, který vrství v zásobníku zařízení třídy klávesnice nad zařízením třídy klávesnice. To je na rozdíl od příkladu kbfiltru Win2K DDK, který se vrství mezi portovým zařízením i8042 a zařízením třídy klávesnice. Rozhodl jsem se vrstvit nad zařízení třídy klávesnice z několika důvodů:

  • To znamená, že ctrl2cap IRP_MJ_READ průsečík a manipulace s kódem je sdílen mezi verzemi NT 4 a Win2K.
  • Nechci zadat soubor INF a nechat uživatele procházet Správce zařízení k instalaci Ctrl2cap - Jednoduše upravím odpovídající hodnotu registru (hodnota HKLM\System\CurrentControlSet\Control\Class UpperFilters).

Nevýhodou mého přístupu je (a to je výhoda nebo nevýhoda v závislosti na vašem pohledu):

  • Vzhledem k tomu, že se neinstaluji se souborem INF prostřednictvím Správce zařízení, uživatel není varován, že soubor ovladače Ctrl2cap není digitálně podepsán společností Microsoft.

V tomto konkrétním případě jsem cítil, že výhody převáží nevýhody. Než ale začnete modelovat filtr klávesnice Win2K na Ctrl2cap, důrazně doporučujeme, abyste si prostudovali příklad kbfiltr z Win2K DDK. Bod průsečíku kbfiltru ve vstupní sekvenci klíče usnadňuje vkládání klávesových úhozí do vstupního datového proudu.

Další informace

Další informace o zápisu ovladačů filtru (ovladače, které se připojují k jiným ovladačům, aby viděly jejich vstup a/nebo výstup), najdete tady zdroje, které si můžete prohlédnout:

  • Ukázka sady systém Windows NT a Windows 2000 DDK \src\storage\filter\diskperf
  • Ukázka sady Windows 2000 DDK \src\input\kbfiltr
  • "Zkoumání systém Windows NT systému souborů," by Mark Russinovich, Dr. Dobb's Journal, únor 1997
  • Ovladač doprovodného filtru systému souborů, Filemon

DownloadStáhnout Ctrl2Cap(48 kB)

Běží na:

  • Klient: Windows Vista a vyšší.
  • Server: Windows Server 2008 a novější.