Включение идентификаторов GUID в код драйвера

Чтобы использовать идентификаторы GUID в драйвере в режиме ядра, необходимо выполнить два действия:

  1. Включите файл заголовка Initguid.h, который переопределяет макрос DEFINE_GUID .

    Файл заголовка Initguid.h переопределяет макрос DEFINE_GUID для создания экземпляров идентификаторов GUID (а не просто объявления ссылки EXTERN). Включите этот файл заголовка в исходный файл драйвера, в котором должны создаваться идентификаторы GUID. (Приложения пользовательского режима включают Objbase.h перед включением файлов заголовков, содержащих определения GUID.)

  2. Включите файлы заголовков, определяющие идентификаторы GUID.

    После инструкции, включающей Initguid.h, вы включаете файлы заголовков, содержащие определения GUID. Драйвер может содержать несколько файлов заголовков, содержащих определения GUID, включая системные и сторонние файлы заголовков.

В следующем фрагменте кода показана последовательность инструкций для включения идентификаторов GUID:

:
// include system headers here such as wdm.h

#include <initguid.h>

// include system and driver-specific header files here that contain
// GUID definitions

...

Поместите приведенные выше инструкции в один модуль драйвера; обычно модуль main. При наличии приведенных выше инструкций драйвер ссылается на GUID, используя его символьное имя.