Я был на той же самой территории для серийного принтера. О лучшем примере, который я нашел, была эта статья в Dr Dobbs Journal . Хорошая часть заключается в том, что рассматриваются как драйвер последовательного порта, так и программа управления пользовательским пространством, и проект также можно использовать в качестве примера настройки Visual Studio для компиляции драйвера. Это также что-то немного трудно найти информацию о. В статье обсуждается старый драйвер в стиле NT, который хорошо работал на XP.
На CodeProject есть немало хороших статей о написании драйверов и программ для взаимодействия с ними. Они включают в себя исходный код и большинство имеют дело с новыми драйверами в стиле WDM и WDF.
OSROnline - еще один хороший источник, особенно для обсуждения конкретных вопросов и распространенных ошибок. У них также есть отличные утилиты, которые вам понадобятся.
Некоторым наиболее четко написанным и понятным кодом драйвера, с которым я сталкивался, был пример кода Марка Руссиновича. Несмотря на то, что Microsoft отказалась от всех источников, когда они приобрели Sysinternals, некоторые из лучших примеров все еще можно найти здесь и там.
Драйверы довольно интересные. Что бы вы ни делали, делайте это на виртуальной машине. На самом деле.