Поделиться через


Создание нового программного драйвера

В этом разделе мы объясним, как использовать Visual Studio для создания нового программного драйвера. Программные драйверы отличаются от драйверов функций устройств, драйверов фильтров и драйверов файловой системы, которые рассматриваются в других разделах. Дополнительные сведения о программных драйверах и их отличиях от других типов драйверов см. в разделах Что такое драйвер? и Выбор модели драйвера.

Сначала определите, какая модель драйвера подходит для вашего программного драйвера. Три варианта: платформа драйвера режима ядра (KMDF), устаревшая модель драйвера NT и модель драйвера Windows (WDM). Сведения о том, какая модель лучше всего подходит для вас, см. в разделе Выбор модели драйвера.

Вариант 1. Вы хотите использовать KMDF

  1. В Visual Studio в меню Файл выберите Создать | Проект.
  2. В диалоговом окне Новый проект в области слева найдите и выберите WDF.
  3. В средней области выберите Драйвер режима ядра (KMDF).
  4. Заполните поля Имя и Расположение и нажмите кнопку ОК. Дополнительные сведения см. в статье Написание драйвера KMDF на основе шаблона.

    Примечание

    При создании нового драйвера KMDF необходимо выбрать имя драйвера, которое содержит не более 32 символов. Это ограничение длины определяется в wdfglobals.h.

  5. На этом этапе у вас есть проект драйвера, который реализует общий код, необходимый большинству драйверов KMDF. Теперь можно указать код, относящееся к драйверу программного обеспечения.

Вариант 2. Вы хотите использовать устаревшую модель NT

  1. В Visual Studio в меню Файл выберите Создать | Проект.

  2. В Visual Studio в диалоговом окне Новый проект в разделе Драйвер Windows выберите WDM | Пустой драйвер WDM.

    Примечание

    Вы не собираетесь писать драйвер WDM, но вам нужен шаблон Пустой драйвер WDM .

  3. Заполните поля Имя и Расположение и нажмите кнопку ОК.

  4. На этом этапе у вас есть пустой проект драйвера WDM. В окне Обозреватель решений выберите и удерживайте (или щелкните правой кнопкой мыши) проект драйвера, а затем выберите Добавить | Новый элемент.

  5. В диалоговом окне Добавление нового элемента выберите Файл C++ (CPP), введите имя файла и нажмите кнопку ОК.

    Примечание

    Если вы хотите создать C-файл вместо CPP-файла, введите имя с расширением C .

  6. Включите ntddk.h.

  7. Реализуйте функции, необходимые для драйвера программного обеспечения. При реализации и упорядочении функций вы можете добавить файлы заголовков и дополнительные CPP- или C-файлы.

Случай 3. Вы хотите использовать WDM

Крайне маловероятно, что вы захотите использовать WDM для программного драйвера. Но если вы это сделаете, выполните следующие действия.

  1. В Visual Studio в меню Файл выберите Создать | Проект.

  2. В Visual Studio в диалоговом окне Новый проект в разделе Драйвер Windows выберите WDM.

  3. Заполните поля Имя и Расположение и нажмите кнопку ОК.

  4. На этом этапе у вас есть пустой проект драйвера WDM. В окне Обозреватель решений выберите и удерживайте (или щелкните правой кнопкой мыши) проект драйвера, а затем выберите Добавить | Новый элемент.

  5. В диалоговом окне Добавление нового элемента выберите Файл C++ (CPP), введите имя файла и нажмите кнопку ОК.

    Примечание

    Если вы хотите создать C-файл вместо CPP-файла, введите имя с расширением C .

  6. Включите wdm.h.

  7. Реализуйте функции, необходимые для драйвера программного обеспечения. При реализации и упорядочении функций вы можете добавить файлы заголовков и дополнительные CPP- или C-файлы.