winternl.h 标头

此标头由多种技术使用。 有关详细信息,请参阅:

winternl.h 包含以下编程接口:

函数

 
NtClose

已弃用。 关闭指定的句柄。 NtClose 被 CloseHandle 取代。
NtCreateFile

创建新的文件或目录,或打开现有文件、设备、目录或卷。
NtDeviceIoControlFile

已弃用。 为提供的缓冲区生成描述符 () ,并将非类型化数据传递给与文件句柄关联的设备驱动程序。 NtDeviceIoControlFile 被 DeviceIoControl 取代。
NtNotifyChangeMultipleKeys

请求在注册表项或其任何子项发生更改时发出通知。
NtOpenFile

打开现有文件、设备、目录或卷,并返回文件对象的句柄。
NtQueryInformationProcess

检索有关指定进程的信息。 (NtQueryInformationProcess)
NtQueryInformationThread

检索有关指定线程的信息。 (NtQueryInformationThread)
NtQueryMultipleValueKey

检索指定的多值键的值。
NtQueryObject

检索各种类型的对象信息。
NtQuerySystemInformation

检索指定的系统信息。
NtQuerySystemTime

检索当前系统时间。
NtRenameKey

更改指定注册表项的名称。 (NtRenameKey)
NtSetInformationKey

设置指定注册表项的信息。
NtWaitForSingleObject

已弃用。 等待指定的 对象达到信号状态。 NtWaitForSingleObject 被 WaitForSingleObject 取代。
RtlAnsiStringToUnicodeString

将指定的 ANSI 源字符串转换为 Unicode 字符串。
RtlCharToInteger

将字符串转换为整数。
RtlConvertSidToUnicodeString

将安全标识符 (SID) 转换为其 Unicode 字符表示形式。
RtlFreeAnsiString

释放 RtlUnicodeStringToAnsiString 分配的字符串缓冲区。
RtlFreeOemString

释放 RtlUnicodeStringToOemString 分配的字符串缓冲区。
RtlFreeUnicodeString

释放由 RtlAnsiStringToUnicodeString 或 RtlUpcaseUnicodeString 分配的字符串缓冲区。
RtlInitString

初始化计数字符串。
RtlInitUnicodeString

初始化计数的 Unicode 字符串。
RtlIsNameLegalDOS8Dot3

确定是否可以使用指定名称在 FAT 文件系统上创建文件。
RtlLocalTimeToSystemTime

将指定的本地时间转换为系统时间。
RtlNtStatusToDosError

将指定的 NTSTATUS 代码转换为其等效的系统错误代码。
RtlTimeToSecondsSince1970

将指定的 64 位系统时间转换为自 1970 年 1 月 1 日开始以来的秒数。
RtlUnicodeStringToAnsiString

将指定的 Unicode 源字符串转换为 ANSI 字符串。
RtlUnicodeStringToOemString

将指定的 Unicode 源字符串转换为 OEM 字符串。 转换是针对 OEM 代码页 (OCP) 完成的。
RtlUnicodeToMultiByteSize

确定将 Unicode 字符串表示为 ANSI 字符串所需的字节数。
RtlUniform

使用 D.H. Lehmer 的 1948 算法生成一个统一的随机数。

结构

 
PEB

包含进程信息。
PEB_LDR_DATA

包含有关进程加载的模块的信息。
RTL_USER_PROCESS_PARAMETERS

包含进程参数信息。
STRING

与 RtlUnicodeStringToOemString 函数一起使用。
TEB

线程环境块 (TEB 结构) 描述线程的状态。