现在的位置: 首页 > 综合 > 正文

如何include ntddk.h

2013年08月01日 ⁄ 综合 ⁄ 共 620字 ⁄ 字号 评论关闭
从安全焦点看到的。

作者:ilsy
ntddk.h如果直接include进来会有问题的,应该这样做:

namespace NT {
    extern "C" {

#pragma warning(disable: 4005)  // macro redefinition
#pragma warning(disable: 4201)  // nonstandard extension
#include <ddk/ntddk.h>  // wre
#include <tdikrnl.h>
#pragma warning(default: 4005)
#pragma warning(default: 4201)

NTSYSAPI
NTSTATUS
NTAPI
ZwQuerySystemInformation(
    IN SYSTEM_INFORMATION_CLASS SystemInformationClass,
    OUT PVOID SystemInformation,
    IN ULONG SystemInformationLength,
    OUT PULONG ReturnLength OPTIONAL
    );

下面是一些函数原型和其他定义

    }
}
using NT::NTSTATUS;

以后引用里面定义的函数可以这样使用:

NT::ZwQuerySystemInformation()

这样就可以include进ntddk.h了,

或者把呢所有需要的定义自己定义一个.h文件不用ntddk.h。

抱歉!评论已关闭.