Ctrl2Cap v2.0
Od Mark Russinovich
Publikováno: 1. listopadu 2006
Stá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
Stáhnout Ctrl2Cap(48 kB)
Běží na:
- Klient: Windows Vista a vyšší.
- Server: Windows Server 2008 a novější.