Files
TransPyC/includes/w32/win32base.vp
T
TermiNexus 396e0a54be fix(SysLibTest): CDefine 大整数全链路 64 位化 + Win32 结构体 ULONG→DWORD
- maxsize=9223372036854775807 曾全链路 32 位截断成 4294967295:
  StubGen/Converter 与 register_cdefine_constant 改 %lld、lookup 改
  atoll、extract_cdefine_int_value/_lookup_cross_module_cdefine 改
  CInt64T,新增 _const_int_for_cdefine(超 0xFFFFFFFF 才升 i64,
  0xFFFFFFFF 保持 i32 -1 语义)
- subprocess stdout 为空根因 STARTUPINFOA/PROCESS_INFORMATION/
  MEMORY_BASIC_INFORMATION ULONG 字段(i64 占 8 字节)布局错位致
  CreateProcess 读不到 STARTF_USESTDHANDLES,改 DWORD 对齐 Windows 布局
- 移除 syslibtest_impl.vp 调试 DBG 标记
2026-08-15 13:11:25 +08:00

81 lines
2.6 KiB
Plaintext

import t
from stdint import *
HANDLE: t.CTypedef = VOIDPTR
LPCSTR: t.CTypedef = t.CConst | t.CChar | t.CPtr
LPCWSTR: t.CTypedef = t.CConst | t.CUnsignedShort | t.CPtr
INVALID_HANDLE_VALUE: t.CDefine = -1
NULL: t.CDefine = 0
TRUE: t.CDefine = 1
FALSE: t.CDefine = 0
INFINITE: t.CDefine = 0xFFFFFFFF
WAIT_FAILED: t.CDefine = 0xFFFFFFFF
WAIT_OBJECT_0: t.CDefine = 0
WAIT_TIMEOUT: t.CDefine = 258
WAIT_ABANDONED: t.CDefine = 0x80
MAX_PATH: t.CDefine = 260
ERROR_SUCCESS: t.CDefine = 0
ERROR_FILE_NOT_FOUND: t.CDefine = 2
ERROR_ACCESS_DENIED: t.CDefine = 5
ERROR_INSUFFICIENT_BUFFER: t.CDefine = 122
class SECURITY_ATTRIBUTES():
nLength: DWORD
lpSecurityDescriptor: VOIDPTR
bInheritHandle: BOOL
class OVERLAPPED():
Internal: ULONGLONG
InternalHigh: ULONGLONG
Offset: DWORD
OffsetHigh: DWORD
hEvent: HANDLE
class FILETIME():
dwLowDateTime: DWORD
dwHighDateTime: DWORD
class SYSTEMTIME():
wYear: WORD
wMonth: WORD
wDayOfWeek: WORD
wDay: WORD
wHour: WORD
wMinute: WORD
wSecond: WORD
wMilliseconds: WORD
class GUID():
Data1: DWORD
Data2: WORD
Data3: WORD
Data4: BYTEPTR
class LARGE_INTEGER():
QuadPart: LONGLONG
class ULARGE_INTEGER():
QuadPart: ULONGLONG
def GetLastError() -> ULONG | t.State: pass
def SetLastError(dwErrCode: ULONG) -> t.State: pass
def CloseHandle(hObject: HANDLE) -> BOOL | t.State: pass
def GetProcAddress(hModule: HANDLE, lpProcName: LPCSTR) -> VOIDPTR | t.State: pass
def GetModuleHandleA(lpModuleName: LPCSTR) -> HANDLE | t.State: pass
def GetModuleHandleW(lpModuleName: LPCWSTR) -> HANDLE | t.State: pass
def LoadLibraryA(lpLibFileName: LPCSTR) -> HANDLE | t.State: pass
def LoadLibraryW(lpLibFileName: LPCWSTR) -> HANDLE | t.State: pass
def FreeLibrary(hLibModule: HANDLE) -> BOOL | t.State: pass
def GetSystemTime(lpSystemTime: SYSTEMTIME | t.CPtr) -> t.State: pass
def GetLocalTime(lpSystemTime: SYSTEMTIME | t.CPtr) -> t.State: pass
def FileTimeToSystemTime(lpFileTime: FILETIME | t.CPtr, lpSystemTime: SYSTEMTIME | t.CPtr) -> BOOL | t.State: pass
def SystemTimeToFileTime(lpSystemTime: SYSTEMTIME | t.CPtr, lpFileTime: FILETIME | t.CPtr) -> BOOL | t.State: pass
def QueryPerformanceCounter(lpPerformanceCount: LARGE_INTEGER | t.CPtr) -> BOOL | t.State: pass
def QueryPerformanceFrequency(lpFrequency: LARGE_INTEGER | t.CPtr) -> BOOL | t.State: pass
def Sleep(dwMilliseconds: ULONG) -> t.State: pass
def SleepEx(dwMilliseconds: ULONG, bAlertable: BOOL) -> ULONG | t.State: pass
def GetTickCount() -> ULONG | t.State: pass
def GetTickCount64() -> ULONGLONG | t.State: pass
def GetCommandLineA() -> CHARPTR | t.State: pass