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


C28169

предупреждение C28169: функция отправки не имеет никаких _Dispatch_type_ заметок

Средство анализа кода сообщает об этом предупреждении, если справа от назначения основной таблице нет (допустимых) заметок _Dispatch_type_. Иногда предупреждение может возникать, если в правой части есть приведение, которое отрезает _Dispatch_type_ заметку. Справа должна быть функция типа DRIVER_DISPATCH типа с соответствующими _Dispatch_type_ заметками.

Дополнительные сведения см. в разделе Использование объявлений типов ролей функции.

Пример

Следующее объявление функции вызывает это предупреждение, если функция используется в назначении подпрограммы диспетчера для MajorFunction.

NTSTATUS
DispatchSystemControl (
    PDEVICE_OBJECT  DeviceObject,
    PIRP            Irp
    );

Следующее объявление функции, используемое таким же образом, не вызывает этого предупреждения.

// Function: DispatchSystemControl
// This is an example of a fully annotated declaration.  
// IRP_MJ_SYSTEM_CONTROL is the type of IRP handled by this function.  
// Multiple _Dispatch_type_ lines are acceptable if the function handles more than 1 IRP type.
//
_Dispatch_type_(IRP_MJ_SYSTEM_CONTROL) 
DRIVER_DISPATCH DispatchSystemControl;