ZwOpenSection 函数 (wdm.h)
ZwOpenSection 例程打开现有节对象的句柄。
语法
NTSYSAPI NTSTATUS ZwOpenSection(
[out] PHANDLE SectionHandle,
[in] ACCESS_MASK DesiredAccess,
[in] POBJECT_ATTRIBUTES ObjectAttributes
);
参数
[out] SectionHandle
指向 HANDLE 变量的指针,该变量接收 section 对象的句柄。
[in] DesiredAccess
指定一个 ACCESS_MASK 值,该值确定对 对象的请求访问权限。 有关详细信息,请参阅 ZwCreateSection 的 DesiredAccess 参数。
[in] ObjectAttributes
指向 OBJECT_ATTRIBUTES 结构的指针,该结构指定对象名称和其他属性。 使用 InitializeObjectAttributes 初始化此结构。 如果调用方未在系统线程上下文中运行,则必须在调用 InitializeObjectAttributes 时设置 OBJ_KERNEL_HANDLE 属性。
返回值
ZwOpenSection 在成功时返回STATUS_SUCCESS,或在失败时返回相应的错误代码。 可能的返回值包括:
注解
如果该节不存在,或者系统未授予请求的访问权限,则操作将失败。
不再使用 SectionHandle 指向的句柄后,驱动程序必须调用 ZwClose 以将其关闭。
如果调用方未在系统线程上下文中运行,则必须确保它创建的任何句柄都是专用句柄。 否则,运行驱动程序的上下文中的进程可以访问句柄。 有关详细信息,请参阅 对象句柄。
如果在用户模式下调用此函数,则应使用名称“NtOpenSection”而不是“ZwOpenSection”。
对于来自内核模式驱动程序的调用,Windows Native System Services 例程的 NtXxx 和 ZwXxx 版本在处理和解释输入参数的方式上的行为可能有所不同。 有关例程的 NtXxx 和 ZwXxx 版本之间的关系的详细信息,请参阅 使用本机系统服务例程的 Nt 和 Zw 版本。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 从 Windows 2000 开始可用。 |
目标平台 | 通用 |
标头 | wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
DDI 符合性规则 | HwStorPortProhibitedDDI (storport) , PowerIrpDDis (wdm) |