win32api/advapi32typedef.go
starainrt 0f82ba044b
修正 Win32 封装语义并补齐关键结构体/进程测试覆盖
- 修正 WTS 会话相关类型、枚举与活动会话选择逻辑
- 对齐 FILE_ID_DESCRIPTOR 布局与 FILE_ID_TYPE 语义,修复 OpenFileById 调用前提
- 修正 user32/shell32/kernel32 部分 API 的返回值、参数个数与错误处理
- 完善剪贴板更新格式读取的缓冲区重试逻辑
- 补充常用进程、线程、调试、桌面与会话 helper
- 增加结构体布局、会话查询、剪贴板、CreateProcess 等回归测试
- 将默认 CreateProcess 相关测试切到 helper 进程,并保留显式开启的 cmd.exe 集成覆盖
2026-06-06 17:46:02 +08:00

56 lines
1.0 KiB
Go

package win32api
type TOKEN_LINKED_TOKEN struct {
LinkedToken TOKEN
}
const (
TOKEN_ASSIGN_PRIMARY DWORD = 0x0001
TOKEN_DUPLICATE DWORD = 0x0002
TOKEN_IMPERSONATE DWORD = 0x0004
TOKEN_QUERY DWORD = 0x0008
TOKEN_QUERY_SOURCE DWORD = 0x0010
TOKEN_ADJUST_PRIVILEGES DWORD = 0x0020
TOKEN_ADJUST_GROUPS DWORD = 0x0040
TOKEN_ADJUST_DEFAULT DWORD = 0x0080
TOKEN_ADJUST_SESSIONID DWORD = 0x0100
TOKEN_ALL_ACCESS DWORD = 0xF01FF
)
const (
SE_PRIVILEGE_ENABLED DWORD = 0x00000002
)
const (
LOGON_WITH_PROFILE DWORD = 0x00000001
LOGON_NETCREDENTIALS_ONLY DWORD = 0x00000002
)
const (
SE_DEBUG_NAME = "SeDebugPrivilege"
SE_CHANGE_NOTIFY_NAME = "SeChangeNotifyPrivilege"
)
const (
TokenElevation uintptr = 20
)
type LUID struct {
LowPart DWORD
HighPart int32
}
type LUID_AND_ATTRIBUTES struct {
Luid LUID
Attributes DWORD
}
type TOKEN_PRIVILEGES struct {
PrivilegeCount DWORD
Privileges [1]LUID_AND_ATTRIBUTES
}
type TOKEN_ELEVATION struct {
TokenIsElevated DWORD
}