C28175
предупреждение C28175: член структуры не должен получить доступ к драйверу
Это предупреждение означает, что драйвер обращается к недокументированного члену структуры, к которому драйверы никогда не должны получать доступ.
Драйверы никогда не должны получать доступ к указанному недокументированного элемента структуры. Для большинства непрозрачных или частично непрозрачных структур этот запрет является абсолютным. Однако драйверы могут получить доступ к некоторым недокументированных элементов структуры из определенных подпрограмм. Например, драйвер может получить доступ к незадокументированных членам частично непрозрачной структуры DRIVER_OBJECT только в рамках процедуры DRIVER_INITIALIZE или DRIVER_UNLOAD.
Иногда причина, по которой это правило применяется к конкретному члену, не сразу очевидно. Например, один экземпляр, в котором это происходит, связан с NextDevice членом _DEVICE_OBJECT. В этом экземпляре блокировка должна использоваться для безопасного доступа к этому связанному списку, но эта блокировка недоступна драйверу. В этом случае нарушение этого правила приводит к нечастой, но трудно диагностировать сбои. Правильный способ доступа к соответствующим устройствам — использовать функцию IoEnumerateDeviceObjectList.