mirror of
https://github.com/nim-lang/Nim.git
synced 2025-12-29 01:14:41 +00:00
lib/windows - Dropped 'T' from types
This commit is contained in:
@@ -29,12 +29,12 @@ import
|
||||
type
|
||||
MMRESULT* = uint32
|
||||
MMVERSION* = uint32
|
||||
HWAVEOUT* = THandle
|
||||
HWAVEOUT* = Handle
|
||||
LPHWAVEOUT* = ptr HWAVEOUT
|
||||
HWAVEIN* = THandle
|
||||
HWAVEIN* = Handle
|
||||
LPHWAVEIN* = ptr HWAVEOUT
|
||||
HWAVE* = THandle
|
||||
LPHWAVE* = ptr THandle
|
||||
HWAVE* = Handle
|
||||
LPHWAVE* = ptr Handle
|
||||
LPUINT* = ptr uint32
|
||||
|
||||
const
|
||||
@@ -151,7 +151,7 @@ const
|
||||
CALLBACK_FUNCTION* = 0x00030000
|
||||
|
||||
type
|
||||
HDRVR* = THandle
|
||||
HDRVR* = Handle
|
||||
|
||||
const
|
||||
DRV_LOAD* = 1
|
||||
@@ -178,7 +178,7 @@ const
|
||||
DRV_MCI_LAST* = (DRV_RESERVED + 0x00000FFF)
|
||||
|
||||
type
|
||||
PDRVCALLBACK* = proc (hdrvr: THandle, uMsg: uint32, dwUser, dw1, dw2: DWORD){.
|
||||
PDRVCALLBACK* = proc (hdrvr: Handle, uMsg: uint32, dwUser, dw1, dw2: DWORD){.
|
||||
stdcall.}
|
||||
|
||||
proc sndPlaySoundA*(Name: LPCSTR, flags: uint32): bool{.stdcall,
|
||||
@@ -991,7 +991,6 @@ type
|
||||
NPMMTIME* = ptr MMTIME
|
||||
LPMMTIME* = ptr MMTIME
|
||||
PWAVEHDR* = ptr WAVEHDR
|
||||
TMMTime* = MMTIME
|
||||
WAVEHDR* {.final.} = object
|
||||
lpData*: cstring
|
||||
dwBufferLength*: DWORD
|
||||
@@ -1002,7 +1001,6 @@ type
|
||||
lpNext*: PWAVEHDR
|
||||
reserved*: DWORD
|
||||
|
||||
TWAVEHDR* = WAVEHDR
|
||||
NPWAVEHDR* = ptr WAVEHDR
|
||||
LPWAVEHDR* = ptr WAVEHDR
|
||||
WAVEOUTCAPSA* {.final.} = object
|
||||
@@ -1015,7 +1013,6 @@ type
|
||||
wReserved1*: int16
|
||||
dwSupport*: DWORD
|
||||
|
||||
TWAVEOUTCAPSA* = WAVEOUTCAPSA
|
||||
PWAVEOUTCAPSA* = ptr WAVEOUTCAPSA
|
||||
NPWAVEOUTCAPSA* = ptr WAVEOUTCAPSA
|
||||
LPWAVEOUTCAPSA* = ptr WAVEOUTCAPSA
|
||||
@@ -1032,7 +1029,8 @@ type
|
||||
PWAVEOUTCAPSW* = ptr WAVEOUTCAPSW
|
||||
NPWAVEOUTCAPSW* = ptr WAVEOUTCAPSW
|
||||
LPWAVEOUTCAPSW* = ptr WAVEOUTCAPSW
|
||||
TWAVEOUTCAPSW* = WAVEOUTCAPSW
|
||||
{.deprecated: [Twavehdr: Wavehdr, Tmmtime: Mmtime, Twaveoutcapsa: Waveoutcapsa,
|
||||
Twaveoutcapsw: Waveoutcapsw].}
|
||||
|
||||
when defined(UNICODE):
|
||||
type
|
||||
@@ -1127,10 +1125,10 @@ type
|
||||
LPWAVEFORMATEX* = ptr WAVEFORMATEX
|
||||
LPCWAVEFORMATEX* = ptr WAVEFORMATEX
|
||||
TWAVEFORMATEX* = WAVEFORMATEX
|
||||
HMIDI* = THandle
|
||||
HMIDIIN* = THandle
|
||||
HMIDIOUT* = THandle
|
||||
HMIDISTRM* = THandle
|
||||
HMIDI* = Handle
|
||||
HMIDIIN* = Handle
|
||||
HMIDIOUT* = Handle
|
||||
HMIDISTRM* = Handle
|
||||
LPHMIDI* = ptr HMIDI
|
||||
LPHMIDIIN* = ptr HMIDIIN
|
||||
LPHMIDIOUT* = ptr HMIDIOUT
|
||||
@@ -1299,9 +1297,9 @@ else:
|
||||
LPAUXCAPS* = LPAUXCAPSA
|
||||
type
|
||||
TAUXCAPS* = AUXCAPS
|
||||
HMIXEROBJ* = THandle
|
||||
HMIXEROBJ* = Handle
|
||||
LPHMIXEROBJ* = ptr HMIXEROBJ
|
||||
HMIXER* = THandle
|
||||
HMIXER* = Handle
|
||||
LPHMIXER* = ptr HMIXER
|
||||
|
||||
proc mixerGetNumDevs*(): uint32{.stdcall, dynlib: "winmm.dll",
|
||||
@@ -1647,7 +1645,7 @@ type
|
||||
TJOYINFOEX* = JOYINFOEX
|
||||
FOURCC* = DWORD
|
||||
HPSTR* = cstring
|
||||
HMMIO* = THandle
|
||||
HMMIO* = Handle
|
||||
LPMMIOPROC* = proc (x1: LPSTR, x2: uint32, x3, x4: LPARAM): LRESULT{.stdcall.}
|
||||
TMMIOPROC* = LPMMIOPROC
|
||||
MMIOINFO* {.final.} = object
|
||||
@@ -2096,14 +2094,14 @@ else:
|
||||
type
|
||||
MCI_ANIM_RECT_PARMS* {.final.} = object
|
||||
dwCallback*: DWORD
|
||||
rc*: TRECT
|
||||
rc*: RECT
|
||||
|
||||
PMCI_ANIM_RECT_PARMS* = ptr MCI_ANIM_RECT_PARMS
|
||||
LPMCI_ANIM_RECT_PARMS* = ptr MCI_ANIM_RECT_PARMS
|
||||
TMCI_ANIM_RECT_PARMS* = MCI_ANIM_RECT_PARMS
|
||||
MCI_ANIM_UPDATE_PARMS* {.final.} = object
|
||||
dwCallback*: DWORD
|
||||
rc*: TRECT
|
||||
rc*: RECT
|
||||
hDC*: HDC
|
||||
|
||||
PMCI_ANIM_UPDATE_PARMS* = ptr MCI_ANIM_UPDATE_PARMS
|
||||
@@ -2179,7 +2177,7 @@ type
|
||||
TMCI_OVLY_WINDOW_PARMS* = MCI_OVLY_WINDOW_PARMSW
|
||||
MCI_OVLY_RECT_PARMS* {.final.} = object
|
||||
dwCallback*: DWORD
|
||||
rc*: TRECT
|
||||
rc*: RECT
|
||||
|
||||
PMCI_OVLY_RECT_PARMS* = ptr MCI_OVLY_RECT_PARMS
|
||||
LPMCI_OVLY_RECT_PARMS* = ptr MCI_OVLY_RECT_PARMS
|
||||
@@ -2187,7 +2185,7 @@ type
|
||||
MCI_OVLY_SAVE_PARMSA* {.final.} = object
|
||||
dwCallback*: DWORD
|
||||
lpfilename*: LPCSTR
|
||||
rc*: TRECT
|
||||
rc*: RECT
|
||||
|
||||
PMCI_OVLY_SAVE_PARMSA* = ptr MCI_OVLY_SAVE_PARMSA
|
||||
LPMCI_OVLY_SAVE_PARMSA* = ptr MCI_OVLY_SAVE_PARMSA
|
||||
@@ -2195,7 +2193,7 @@ type
|
||||
MCI_OVLY_SAVE_PARMSW* {.final.} = object
|
||||
dwCallback*: DWORD
|
||||
lpfilename*: LPCWSTR
|
||||
rc*: TRECT
|
||||
rc*: RECT
|
||||
|
||||
PMCI_OVLY_SAVE_PARMSW* = ptr MCI_OVLY_SAVE_PARMSW
|
||||
LPMCI_OVLY_SAVE_PARMSW* = ptr MCI_OVLY_SAVE_PARMSW
|
||||
@@ -2216,7 +2214,7 @@ type
|
||||
MCI_OVLY_LOAD_PARMSA* {.final.} = object
|
||||
dwCallback*: DWORD
|
||||
lpfilename*: LPCSTR
|
||||
rc*: TRECT
|
||||
rc*: RECT
|
||||
|
||||
PMCI_OVLY_LOAD_PARMSA* = ptr MCI_OVLY_LOAD_PARMSA
|
||||
LPMCI_OVLY_LOAD_PARMSA* = ptr MCI_OVLY_LOAD_PARMSA
|
||||
@@ -2224,7 +2222,7 @@ type
|
||||
MCI_OVLY_LOAD_PARMSW* {.final.} = object
|
||||
dwCallback*: DWORD
|
||||
lpfilename*: LPCWSTR
|
||||
rc*: TRECT
|
||||
rc*: RECT
|
||||
|
||||
PMCI_OVLY_LOAD_PARMSW* = ptr MCI_OVLY_LOAD_PARMSW
|
||||
LPMCI_OVLY_LOAD_PARMSW* = ptr MCI_OVLY_LOAD_PARMSW
|
||||
|
||||
@@ -20,9 +20,9 @@ const
|
||||
MAX_LANA* = 254 # lana's in range 0 to MAX_LANA inclusive
|
||||
|
||||
type # Network Control Block
|
||||
PNCB* = ptr TNCB
|
||||
TNCBPostProc* = proc (P: PNCB) {.stdcall.}
|
||||
TNCB* {.final.} = object # Structure returned to the NCB command NCBASTAT is ADAPTER_STATUS followed
|
||||
PNCB* = ptr NCB
|
||||
NCBPostProc* = proc (P: PNCB) {.stdcall.}
|
||||
NCB* {.final.} = object # Structure returned to the NCB command NCBASTAT is ADAPTER_STATUS followed
|
||||
# by an array of NAME_BUFFER structures.
|
||||
ncb_command*: char # command code
|
||||
ncb_retcode*: char # return code
|
||||
@@ -34,17 +34,17 @@ type # Network Control Block
|
||||
ncb_name*: array[0..NCBNAMSZ - 1, char] # our blank-padded netname
|
||||
ncb_rto*: char # rcv timeout/retry count
|
||||
ncb_sto*: char # send timeout/sys timeout
|
||||
ncb_post*: TNCBPostProc # POST routine address
|
||||
ncb_post*: NCBPostProc # POST routine address
|
||||
ncb_lana_num*: char # lana (adapter) number
|
||||
ncb_cmd_cplt*: char # 0xff => commmand pending
|
||||
ncb_reserve*: array[0..9, char] # reserved, used by BIOS
|
||||
ncb_event*: THandle # HANDLE to Win32 event which
|
||||
ncb_event*: Handle # HANDLE to Win32 event which
|
||||
# will be set to the signalled
|
||||
# state when an ASYNCH command
|
||||
# completes
|
||||
|
||||
PAdapterStatus* = ptr TAdapterStatus
|
||||
TAdapterStatus* {.final.} = object
|
||||
PAdapterStatus* = ptr AdapterStatus
|
||||
AdapterStatus* {.final.} = object
|
||||
adapter_address*: array[0..5, char]
|
||||
rev_major*: char
|
||||
reserved0*: char
|
||||
@@ -73,11 +73,13 @@ type # Network Control Block
|
||||
max_sess_pkt_size*: int16
|
||||
name_count*: int16
|
||||
|
||||
PNameBuffer* = ptr TNameBuffer
|
||||
TNameBuffer* {.final.} = object
|
||||
PNameBuffer* = ptr NameBuffer
|
||||
NameBuffer* {.final.} = object
|
||||
name*: array[0..NCBNAMSZ - 1, char]
|
||||
name_num*: char
|
||||
name_flags*: char
|
||||
{.deprecated: [TNCB: NCB, TNCBPostProc: NCBPostProc,
|
||||
TAdapterStatus: AdapterStatus, TNameBuffer: NameBuffer].}
|
||||
|
||||
|
||||
const # values for name_flags bits.
|
||||
@@ -94,21 +96,22 @@ type # Structure returned to the NCB command NCBSSTAT is SESSION_HEADER followed
|
||||
# by an array of SESSION_BUFFER structures. If the NCB_NAME starts with an
|
||||
# asterisk then an array of these structures is returned containing the
|
||||
# status for all names.
|
||||
PSessionHeader* = ptr TSessionHeader
|
||||
TSessionHeader* {.final.} = object
|
||||
PSessionHeader* = ptr SessionHeader
|
||||
SessionHeader* {.final.} = object
|
||||
sess_name*: char
|
||||
num_sess*: char
|
||||
rcv_dg_outstanding*: char
|
||||
rcv_any_outstanding*: char
|
||||
|
||||
PSessionBuffer* = ptr TSessionBuffer
|
||||
TSessionBuffer* {.final.} = object
|
||||
PSessionBuffer* = ptr SessionBuffer
|
||||
SessionBuffer* {.final.} = object
|
||||
lsn*: char
|
||||
state*: char
|
||||
local_name*: array[0..NCBNAMSZ - 1, char]
|
||||
remote_name*: array[0..NCBNAMSZ - 1, char]
|
||||
rcvs_outstanding*: char
|
||||
sends_outstanding*: char
|
||||
{.deprecated: [TSessionHeader: SessionHeader, TSessionBuffer: SessionBuffer].}
|
||||
|
||||
|
||||
const # Values for state
|
||||
@@ -128,14 +131,14 @@ type # Structure returned to the NCB command NCBENUM.
|
||||
len*: char # Number of valid entries in lana[]
|
||||
lana*: array[0..MAX_LANA, char]
|
||||
|
||||
PFindNameHeader* = ptr TFindNameHeader
|
||||
TFindNameHeader* {.final.} = object
|
||||
PFindNameHeader* = ptr FindNameHeader
|
||||
FindNameHeader* {.final.} = object
|
||||
node_count*: int16
|
||||
reserved*: char
|
||||
unique_group*: char
|
||||
|
||||
PFindNameBuffer* = ptr TFindNameBuffer
|
||||
TFindNameBuffer* {.final.} = object # Structure provided with NCBACTION. The purpose of NCBACTION is to provide
|
||||
PFindNameBuffer* = ptr FindNameBuffer
|
||||
FindNameBuffer* {.final.} = object # Structure provided with NCBACTION. The purpose of NCBACTION is to provide
|
||||
# transport specific extensions to netbios.
|
||||
len*: char
|
||||
access_control*: char
|
||||
@@ -144,12 +147,13 @@ type # Structure returned to the NCB command NCBENUM.
|
||||
source_addr*: array[0..5, char]
|
||||
routing_info*: array[0..17, char]
|
||||
|
||||
PActionHeader* = ptr TActionHeader
|
||||
TActionHeader* {.final.} = object
|
||||
PActionHeader* = ptr ActionHeader
|
||||
ActionHeader* {.final.} = object
|
||||
transport_id*: int32
|
||||
action_code*: int16
|
||||
reserved*: int16
|
||||
|
||||
{.deprecated: [TFindNameHeader: FindNameHeader, TFindNameBuffer: FindNameBuffer,
|
||||
TActionHeader: ActionHeader].}
|
||||
|
||||
const # Values for transport_id
|
||||
ALL_TRANSPORTS* = "M\0\0\0"
|
||||
|
||||
@@ -31,7 +31,7 @@ import
|
||||
windows
|
||||
|
||||
type
|
||||
HDROP* = THandle
|
||||
HDROP* = Handle
|
||||
UINT_PTR* = ptr uint32
|
||||
DWORD_PTR* = ptr DWORD
|
||||
PHICON* = ptr HICON
|
||||
@@ -57,8 +57,8 @@ type
|
||||
hStdError*: HANDLE
|
||||
|
||||
LPSTARTUPINFOW* = ptr STARTUPINFOW
|
||||
TSTARTUPINFOW* = STARTUPINFOW
|
||||
PSTARTUPINFOW* = ptr STARTUPINFOW #unicode
|
||||
{.deprecated: [TSTARTUPINFOW: STARTUPINFOW].}
|
||||
|
||||
proc DragQueryFileA*(arg1: HDROP, arg2: uint32, arg3: LPSTR, arg4: uint32): uint32{.
|
||||
stdcall, dynlib: "shell32.dll", importc: "DragQueryFileA".}
|
||||
@@ -132,7 +132,6 @@ type # init with sizeof(DRAGINFO)
|
||||
lpFileList*: LPSTR
|
||||
grfKeyState*: DWORD
|
||||
|
||||
TDRAGINFOA* = DRAGINFOA
|
||||
LPDRAGINFOA* = ptr DRAGINFOA # init with sizeof(DRAGINFO)
|
||||
DRAGINFOW* {.final.} = object
|
||||
uSize*: uint32
|
||||
@@ -141,19 +140,19 @@ type # init with sizeof(DRAGINFO)
|
||||
lpFileList*: LPWSTR
|
||||
grfKeyState*: DWORD
|
||||
|
||||
TDRAGINFOW* = DRAGINFOW
|
||||
LPDRAGINFOW* = ptr DRAGINFOW
|
||||
{.deprecated: [TDRAGINFOA: DRAGINFOA, TDRAGINFOW: DRAGINFOW].}
|
||||
|
||||
when defined(UNICODE):
|
||||
type
|
||||
DRAGINFO* = DRAGINFOW
|
||||
TDRAGINFO* = DRAGINFOW
|
||||
LPDRAGINFO* = LPDRAGINFOW
|
||||
{.deprecated: [TDRAGINFO: DRAGINFOW].}
|
||||
else:
|
||||
type
|
||||
DRAGINFO* = DRAGINFOA
|
||||
TDRAGINFO* = DRAGINFOW
|
||||
LPDRAGINFO* = LPDRAGINFOA
|
||||
{.deprecated: [TDRAGINFO: DRAGINFOW].}
|
||||
const
|
||||
ABM_NEW* = 0x00000000
|
||||
ABM_REMOVE* = 0x00000001
|
||||
@@ -189,8 +188,8 @@ type
|
||||
rc*: RECT
|
||||
lParam*: LPARAM # message specific
|
||||
|
||||
TAPPBARDATA* = AppBarData
|
||||
PAPPBARDATA* = ptr AppBarData
|
||||
{.deprecated: [TAPPBARDATA: AppBarData].}
|
||||
|
||||
proc SHAppBarMessage*(dwMessage: DWORD, pData: APPBARDATA): UINT_PTR{.stdcall,
|
||||
dynlib: "shell32.dll", importc: "SHAppBarMessage".}
|
||||
@@ -299,7 +298,6 @@ type
|
||||
hNameMappings*: LPVOID
|
||||
lpszProgressTitle*: LPCSTR # only used if FOF_SIMPLEPROGRESS
|
||||
|
||||
TSHFILEOPSTRUCTA* = SHFILEOPSTRUCTA
|
||||
LPSHFILEOPSTRUCTA* = ptr SHFILEOPSTRUCTA
|
||||
SHFILEOPSTRUCTW* {.final.} = object
|
||||
hwnd*: HWND
|
||||
@@ -311,19 +309,21 @@ type
|
||||
hNameMappings*: LPVOID
|
||||
lpszProgressTitle*: LPCWSTR
|
||||
|
||||
TSHFILEOPSTRUCTW* = SHFILEOPSTRUCTW
|
||||
LPSHFILEOPSTRUCTW* = ptr SHFILEOPSTRUCTW
|
||||
{.deprecated: [TSHFILEOPSTRUCTA: SHFILEOPSTRUCTA,
|
||||
TSHFILEOPSTRUCTW: SHFILEOPSTRUCTW].}
|
||||
|
||||
when defined(UNICODE):
|
||||
type
|
||||
SHFILEOPSTRUCT* = SHFILEOPSTRUCTW
|
||||
TSHFILEOPSTRUCT* = SHFILEOPSTRUCTW
|
||||
LPSHFILEOPSTRUCT* = LPSHFILEOPSTRUCTW
|
||||
{.deprecated: [TSHFILEOPSTRUCT: SHFILEOPSTRUCTW].}
|
||||
else:
|
||||
type
|
||||
SHFILEOPSTRUCT* = SHFILEOPSTRUCTA
|
||||
TSHFILEOPSTRUCT* = SHFILEOPSTRUCTA
|
||||
LPSHFILEOPSTRUCT* = LPSHFILEOPSTRUCTA
|
||||
{.deprecated: [TSHFILEOPSTRUCT: SHFILEOPSTRUCTA].}
|
||||
|
||||
proc SHFileOperationA*(lpFileOp: LPSHFILEOPSTRUCTA): int32{.stdcall,
|
||||
dynlib: "shell32.dll", importc: "SHFileOperationA".}
|
||||
proc SHFileOperationW*(lpFileOp: LPSHFILEOPSTRUCTW): int32{.stdcall,
|
||||
@@ -332,7 +332,7 @@ proc SHFileOperation*(lpFileOp: LPSHFILEOPSTRUCTA): int32{.stdcall,
|
||||
dynlib: "shell32.dll", importc: "SHFileOperationA".}
|
||||
proc SHFileOperation*(lpFileOp: LPSHFILEOPSTRUCTW): int32{.stdcall,
|
||||
dynlib: "shell32.dll", importc: "SHFileOperationW".}
|
||||
proc SHFreeNameMappings*(hNameMappings: THandle){.stdcall,
|
||||
proc SHFreeNameMappings*(hNameMappings: Handle){.stdcall,
|
||||
dynlib: "shell32.dll", importc: "SHFreeNameMappings".}
|
||||
type
|
||||
SHNAMEMAPPINGA* {.final.} = object
|
||||
@@ -341,7 +341,6 @@ type
|
||||
cchOldPath*: int32
|
||||
cchNewPath*: int32
|
||||
|
||||
TSHNAMEMAPPINGA* = SHNAMEMAPPINGA
|
||||
LPSHNAMEMAPPINGA* = ptr SHNAMEMAPPINGA
|
||||
SHNAMEMAPPINGW* {.final.} = object
|
||||
pszOldPath*: LPWSTR
|
||||
@@ -349,19 +348,20 @@ type
|
||||
cchOldPath*: int32
|
||||
cchNewPath*: int32
|
||||
|
||||
TSHNAMEMAPPINGW* = SHNAMEMAPPINGW
|
||||
LPSHNAMEMAPPINGW* = ptr SHNAMEMAPPINGW
|
||||
{.deprecated: [TSHNAMEMAPPINGA: SHNAMEMAPPINGA,
|
||||
TSHNAMEMAPPINGW: SHNAMEMAPPINGW].}
|
||||
|
||||
when not(defined(UNICODE)):
|
||||
type
|
||||
SHNAMEMAPPING* = SHNAMEMAPPINGW
|
||||
TSHNAMEMAPPING* = SHNAMEMAPPINGW
|
||||
LPSHNAMEMAPPING* = LPSHNAMEMAPPINGW
|
||||
{.deprecated: [TSHNAMEMAPPING: SHNAMEMAPPINGW].}
|
||||
else:
|
||||
type
|
||||
SHNAMEMAPPING* = SHNAMEMAPPINGA
|
||||
TSHNAMEMAPPING* = SHNAMEMAPPINGA
|
||||
LPSHNAMEMAPPING* = LPSHNAMEMAPPINGA
|
||||
{.deprecated: [TSHNAMEMAPPING: SHNAMEMAPPINGA].}
|
||||
#
|
||||
# End Shell File Operations
|
||||
#
|
||||
@@ -424,7 +424,6 @@ type
|
||||
hMonitor*: HANDLE # also: hIcon
|
||||
hProcess*: HANDLE
|
||||
|
||||
TSHELLEXECUTEINFOA* = SHELLEXECUTEINFOA
|
||||
LPSHELLEXECUTEINFOA* = ptr SHELLEXECUTEINFOA
|
||||
SHELLEXECUTEINFOW* {.final.} = object
|
||||
cbSize*: DWORD
|
||||
@@ -443,19 +442,21 @@ type
|
||||
hMonitor*: HANDLE # also: hIcon
|
||||
hProcess*: HANDLE
|
||||
|
||||
TSHELLEXECUTEINFOW* = SHELLEXECUTEINFOW
|
||||
LPSHELLEXECUTEINFOW* = ptr SHELLEXECUTEINFOW
|
||||
{.deprecated: [TSHELLEXECUTEINFOA: SHELLEXECUTEINFOA,
|
||||
TSHELLEXECUTEINFOW: SHELLEXECUTEINFOW].}
|
||||
|
||||
when defined(UNICODE):
|
||||
type
|
||||
SHELLEXECUTEINFO* = SHELLEXECUTEINFOW
|
||||
TSHELLEXECUTEINFO* = SHELLEXECUTEINFOW
|
||||
LPSHELLEXECUTEINFO* = LPSHELLEXECUTEINFOW
|
||||
{.deprecated: [TSHELLEXECUTEINFO: SHELLEXECUTEINFOW].}
|
||||
else:
|
||||
type
|
||||
SHELLEXECUTEINFO* = SHELLEXECUTEINFOA
|
||||
TSHELLEXECUTEINFO* = SHELLEXECUTEINFOA
|
||||
LPSHELLEXECUTEINFO* = LPSHELLEXECUTEINFOA
|
||||
{.deprecated: [TSHELLEXECUTEINFO: SHELLEXECUTEINFOA].}
|
||||
|
||||
proc ShellExecuteExA*(lpExecInfo: LPSHELLEXECUTEINFOA): bool{.stdcall,
|
||||
dynlib: "shell32.dll", importc: "ShellExecuteExA".}
|
||||
proc ShellExecuteExW*(lpExecInfo: LPSHELLEXECUTEINFOW): bool{.stdcall,
|
||||
@@ -492,8 +493,8 @@ type
|
||||
lpStartupInfo*: LPSTARTUPINFOW
|
||||
lpProcessInformation*: LPPROCESS_INFORMATION
|
||||
|
||||
TSHCREATEPROCESSINFOW* = SHCREATEPROCESSINFOW
|
||||
PSHCREATEPROCESSINFOW* = ptr SHCREATEPROCESSINFOW
|
||||
{.deprecated: [TSHCREATEPROCESSINFOW: SHCREATEPROCESSINFOW].}
|
||||
|
||||
proc SHCreateProcessAsUserW*(pscpi: PSHCREATEPROCESSINFOW): bool{.stdcall,
|
||||
dynlib: "shell32.dll", importc: "SHCreateProcessAsUserW".}
|
||||
@@ -510,8 +511,8 @@ type
|
||||
i64Size*: int64
|
||||
i64NumItems*: int64
|
||||
|
||||
TSHQUERYRBINFO* = SHQUERYRBINFO
|
||||
LPSHQUERYRBINFO* = ptr SHQUERYRBINFO # flags for SHEmptyRecycleBin
|
||||
{.deprecated: [TSHQUERYRBINFO: SHQUERYRBINFO].}
|
||||
|
||||
const
|
||||
SHERB_NOCONFIRMATION* = 0x00000001
|
||||
@@ -555,9 +556,8 @@ type
|
||||
uTimeout*: uint32 # also: uVersion
|
||||
szInfoTitle*: array[0..63, char]
|
||||
dwInfoFlags*: DWORD
|
||||
guidItem*: TGUID
|
||||
guidItem*: GUID
|
||||
|
||||
TNOTIFYICONDATAA* = NOTIFYICONDATAA
|
||||
PNOTIFYICONDATAA* = ptr NOTIFYICONDATAA
|
||||
NOTIFYICONDATAW* {.final.} = object
|
||||
cbSize*: DWORD
|
||||
@@ -573,21 +573,22 @@ type
|
||||
uTimeout*: uint32 # also uVersion : UINT
|
||||
szInfoTitle*: array[0..63, char]
|
||||
dwInfoFlags*: DWORD
|
||||
guidItem*: TGUID
|
||||
guidItem*: GUID
|
||||
|
||||
TNOTIFYICONDATAW* = NOTIFYICONDATAW
|
||||
PNOTIFYICONDATAW* = ptr NOTIFYICONDATAW
|
||||
{.deprecated: [TNOTIFYICONDATAA: NOTIFYICONDATAA,
|
||||
TNOTIFYICONDATAW: NOTIFYICONDATAW].}
|
||||
|
||||
when defined(UNICODE):
|
||||
type
|
||||
NOTIFYICONDATA* = NOTIFYICONDATAW
|
||||
TNOTIFYICONDATA* = NOTIFYICONDATAW
|
||||
PNOTIFYICONDATA* = PNOTIFYICONDATAW
|
||||
{.deprecated: [TNOTIFYICONDATA: NOTIFYICONDATAW].}
|
||||
else:
|
||||
type
|
||||
NOTIFYICONDATA* = NOTIFYICONDATAA
|
||||
TNOTIFYICONDATA* = NOTIFYICONDATAA
|
||||
PNOTIFYICONDATA* = PNOTIFYICONDATAA
|
||||
{.deprecated: [TNOTIFYICONDATA: NOTIFYICONDATAA].}
|
||||
const
|
||||
NIN_SELECT* = WM_USER + 0
|
||||
NINF_KEY* = 0x00000001
|
||||
@@ -655,7 +656,6 @@ type
|
||||
szDisplayName*: array[0..(MAX_PATH) - 1, char] # out: display name (or path)
|
||||
szTypeName*: array[0..79, char] # out: type name
|
||||
|
||||
TSHFILEINFOA* = SHFILEINFOA
|
||||
PSHFILEINFOA* = ptr SHFILEINFOA
|
||||
SHFILEINFOW* {.final.} = object
|
||||
hIcon*: HICON # out: icon
|
||||
@@ -664,19 +664,19 @@ type
|
||||
szDisplayName*: array[0..(MAX_PATH) - 1, Wchar] # out: display name (or path)
|
||||
szTypeName*: array[0..79, Wchar] # out: type name
|
||||
|
||||
TSHFILEINFOW* = SHFILEINFOW
|
||||
PSHFILEINFOW* = ptr SHFILEINFOW
|
||||
{.deprecated: [TSHFILEINFOA: SHFILEINFOA, TSHFILEINFOW: SHFILEINFOW].}
|
||||
|
||||
when defined(UNICODE):
|
||||
type
|
||||
SHFILEINFO* = SHFILEINFOW
|
||||
TSHFILEINFO* = SHFILEINFOW
|
||||
pFILEINFO* = SHFILEINFOW
|
||||
{.deprecated: [TSHFILEINFO: SHFILEINFOW].}
|
||||
else:
|
||||
type
|
||||
SHFILEINFO* = SHFILEINFOA
|
||||
TSHFILEINFO* = SHFILEINFOA
|
||||
pFILEINFO* = SHFILEINFOA
|
||||
{.deprecated: [TSHFILEINFO: SHFILEINFOA].}
|
||||
# NOTE: This is also in shlwapi.h. Please keep in synch.
|
||||
|
||||
const
|
||||
@@ -710,16 +710,16 @@ proc SHGetFileInfo*(pszPath: LPCSTR, dwFileAttributes: DWORD,
|
||||
psfi: PSHFILEINFOA, cbFileInfo, UFlags: uint32): DWORD{.
|
||||
stdcall, dynlib: "shell32.dll", importc: "SHGetFileInfoA".}
|
||||
proc SHGetFileInfoA*(pszPath: LPCSTR, dwFileAttributes: DWORD,
|
||||
psfi: var TSHFILEINFOA, cbFileInfo, UFlags: uint32): DWORD{.
|
||||
psfi: var SHFILEINFOA, cbFileInfo, UFlags: uint32): DWORD{.
|
||||
stdcall, dynlib: "shell32.dll", importc: "SHGetFileInfoA".}
|
||||
proc SHGetFileInfoW*(pszPath: LPCWSTR, dwFileAttributes: DWORD,
|
||||
psfi: var TSHFILEINFOW, cbFileInfo, UFlags: uint32): DWORD{.
|
||||
psfi: var SHFILEINFOW, cbFileInfo, UFlags: uint32): DWORD{.
|
||||
stdcall, dynlib: "shell32.dll", importc: "SHGetFileInfoW".}
|
||||
proc SHGetFileInfo*(pszPath: LPCSTR, dwFileAttributes: DWORD,
|
||||
psfi: var TSHFILEINFOA, cbFileInfo, UFlags: uint32): DWORD{.
|
||||
psfi: var SHFILEINFOA, cbFileInfo, UFlags: uint32): DWORD{.
|
||||
stdcall, dynlib: "shell32.dll", importc: "SHGetFileInfoA".}
|
||||
proc SHGetFileInfo*(pszPath: LPCWSTR, dwFileAttributes: DWORD,
|
||||
psfi: var TSHFILEINFOW, cbFileInfo, UFlags: uint32): DWORD{.
|
||||
psfi: var SHFILEINFOW, cbFileInfo, UFlags: uint32): DWORD{.
|
||||
stdcall, dynlib: "shell32.dll", importc: "SHGetFileInfoW".}
|
||||
proc SHGetDiskFreeSpaceExA*(pszDirectoryName: LPCSTR,
|
||||
pulFreeBytesAvailableToCaller: PULARGE_INTEGER,
|
||||
|
||||
@@ -72,22 +72,22 @@ const
|
||||
CSIDL_FLAG_CREATE* = 0x00008000 # (force creation of requested folder if it doesn't exist yet)
|
||||
# Original entry points
|
||||
|
||||
proc SHGetFolderPathA*(Ahwnd: HWND, Csidl: int, Token: THandle, Flags: DWord,
|
||||
proc SHGetFolderPathA*(Ahwnd: HWND, Csidl: int, Token: Handle, Flags: DWord,
|
||||
Path: cstring): HRESULT{.stdcall, dynlib: LibName,
|
||||
importc: "SHGetFolderPathA".}
|
||||
proc SHGetFolderPathW*(Ahwnd: HWND, Csidl: int, Token: THandle, Flags: DWord,
|
||||
proc SHGetFolderPathW*(Ahwnd: HWND, Csidl: int, Token: Handle, Flags: DWord,
|
||||
Path: cstring): HRESULT{.stdcall, dynlib: LibName,
|
||||
importc: "SHGetFolderPathW".}
|
||||
proc SHGetFolderPath*(Ahwnd: HWND, Csidl: int, Token: THandle, Flags: DWord,
|
||||
proc SHGetFolderPath*(Ahwnd: HWND, Csidl: int, Token: Handle, Flags: DWord,
|
||||
Path: cstring): HRESULT{.stdcall, dynlib: LibName,
|
||||
importc: "SHGetFolderPathA".}
|
||||
type
|
||||
PFNSHGetFolderPathA* = proc (Ahwnd: HWND, Csidl: int, Token: THandle,
|
||||
PFNSHGetFolderPathA* = proc (Ahwnd: HWND, Csidl: int, Token: Handle,
|
||||
Flags: DWord, Path: cstring): HRESULT{.stdcall.}
|
||||
PFNSHGetFolderPathW* = proc (Ahwnd: HWND, Csidl: int, Token: THandle,
|
||||
PFNSHGetFolderPathW* = proc (Ahwnd: HWND, Csidl: int, Token: Handle,
|
||||
Flags: DWord, Path: cstring): HRESULT{.stdcall.}
|
||||
PFNSHGetFolderPath* = PFNSHGetFolderPathA
|
||||
TSHGetFolderPathA* = PFNSHGetFolderPathA
|
||||
TSHGetFolderPathW* = PFNSHGetFolderPathW
|
||||
TSHGetFolderPath* = TSHGetFolderPathA
|
||||
|
||||
|
||||
{.deprecated: [TSHGetFolderPathA: PFNSHGetFolderPathA,
|
||||
TSHGetFolderPathW: PFNSHGetFolderPathW,
|
||||
TSHGetFolderPath: SHGetFolderPathA].}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -16,7 +16,7 @@ const
|
||||
useWinUnicode* = not defined(useWinAnsi)
|
||||
|
||||
type
|
||||
THandle* = int
|
||||
Handle* = int
|
||||
LONG* = int32
|
||||
ULONG* = int
|
||||
PULONG* = ptr int
|
||||
@@ -24,15 +24,15 @@ type
|
||||
DWORD* = int32
|
||||
PDWORD* = ptr DWORD
|
||||
LPINT* = ptr int32
|
||||
HDC* = THandle
|
||||
HGLRC* = THandle
|
||||
HDC* = Handle
|
||||
HGLRC* = Handle
|
||||
|
||||
TSECURITY_ATTRIBUTES* {.final, pure.} = object
|
||||
SECURITY_ATTRIBUTES* {.final, pure.} = object
|
||||
nLength*: int32
|
||||
lpSecurityDescriptor*: pointer
|
||||
bInheritHandle*: WINBOOL
|
||||
|
||||
TSTARTUPINFO* {.final, pure.} = object
|
||||
STARTUPINFO* {.final, pure.} = object
|
||||
cb*: int32
|
||||
lpReserved*: cstring
|
||||
lpDesktop*: cstring
|
||||
@@ -48,25 +48,25 @@ type
|
||||
wShowWindow*: int16
|
||||
cbReserved2*: int16
|
||||
lpReserved2*: pointer
|
||||
hStdInput*: THandle
|
||||
hStdOutput*: THandle
|
||||
hStdError*: THandle
|
||||
hStdInput*: Handle
|
||||
hStdOutput*: Handle
|
||||
hStdError*: Handle
|
||||
|
||||
TPROCESS_INFORMATION* {.final, pure.} = object
|
||||
hProcess*: THandle
|
||||
hThread*: THandle
|
||||
PROCESS_INFORMATION* {.final, pure.} = object
|
||||
hProcess*: Handle
|
||||
hThread*: Handle
|
||||
dwProcessId*: int32
|
||||
dwThreadId*: int32
|
||||
|
||||
TFILETIME* {.final, pure.} = object ## CANNOT BE int64 BECAUSE OF ALIGNMENT
|
||||
FILETIME* {.final, pure.} = object ## CANNOT BE int64 BECAUSE OF ALIGNMENT
|
||||
dwLowDateTime*: DWORD
|
||||
dwHighDateTime*: DWORD
|
||||
|
||||
TBY_HANDLE_FILE_INFORMATION* {.final, pure.} = object
|
||||
BY_HANDLE_FILE_INFORMATION* {.final, pure.} = object
|
||||
dwFileAttributes*: DWORD
|
||||
ftCreationTime*: TFILETIME
|
||||
ftLastAccessTime*: TFILETIME
|
||||
ftLastWriteTime*: TFILETIME
|
||||
ftCreationTime*: FILETIME
|
||||
ftLastAccessTime*: FILETIME
|
||||
ftLastWriteTime*: FILETIME
|
||||
dwVolumeSerialNumber*: DWORD
|
||||
nFileSizeHigh*: DWORD
|
||||
nFileSizeLow*: DWORD
|
||||
@@ -74,10 +74,16 @@ type
|
||||
nFileIndexHigh*: DWORD
|
||||
nFileIndexLow*: DWORD
|
||||
|
||||
{.deprecated: [THandle: Handle, TSECURITY_ATTRIBUTES: SECURITY_ATTRIBUTES,
|
||||
TSTARTUPINFO: STARTUPINFO, TPROCESS_INFORMATION: PROCESS_INFORMATION,
|
||||
TFILETIME: FILETIME, TBY_HANDLE_FILE_INFORMATION: BY_HANDLE_FILE_INFORMATION].}
|
||||
|
||||
when useWinUnicode:
|
||||
type TWinChar* = TUtf16Char
|
||||
type WinChar* = Utf16Char
|
||||
{.deprecated: [TWinChar: WinChar].}
|
||||
else:
|
||||
type TWinChar* = char
|
||||
type WinChar* = char
|
||||
{.deprecated: [TWinChar: WinChar].}
|
||||
|
||||
const
|
||||
STARTF_USESHOWWINDOW* = 1'i32
|
||||
@@ -98,67 +104,67 @@ const
|
||||
DETACHED_PROCESS* = 8'i32
|
||||
|
||||
SW_SHOWNORMAL* = 1'i32
|
||||
INVALID_HANDLE_VALUE* = THandle(-1)
|
||||
INVALID_HANDLE_VALUE* = Handle(-1)
|
||||
|
||||
CREATE_UNICODE_ENVIRONMENT* = 1024'i32
|
||||
|
||||
proc closeHandle*(hObject: THandle): WINBOOL {.stdcall, dynlib: "kernel32",
|
||||
proc closeHandle*(hObject: Handle): WINBOOL {.stdcall, dynlib: "kernel32",
|
||||
importc: "CloseHandle".}
|
||||
|
||||
proc readFile*(hFile: THandle, Buffer: pointer, nNumberOfBytesToRead: int32,
|
||||
proc readFile*(hFile: Handle, Buffer: pointer, nNumberOfBytesToRead: int32,
|
||||
lpNumberOfBytesRead: ptr int32, lpOverlapped: pointer): WINBOOL{.
|
||||
stdcall, dynlib: "kernel32", importc: "ReadFile".}
|
||||
|
||||
proc writeFile*(hFile: THandle, Buffer: pointer, nNumberOfBytesToWrite: int32,
|
||||
proc writeFile*(hFile: Handle, Buffer: pointer, nNumberOfBytesToWrite: int32,
|
||||
lpNumberOfBytesWritten: ptr int32,
|
||||
lpOverlapped: pointer): WINBOOL{.
|
||||
stdcall, dynlib: "kernel32", importc: "WriteFile".}
|
||||
|
||||
proc createPipe*(hReadPipe, hWritePipe: var THandle,
|
||||
lpPipeAttributes: var TSECURITY_ATTRIBUTES,
|
||||
proc createPipe*(hReadPipe, hWritePipe: var Handle,
|
||||
lpPipeAttributes: var SECURITY_ATTRIBUTES,
|
||||
nSize: int32): WINBOOL{.
|
||||
stdcall, dynlib: "kernel32", importc: "CreatePipe".}
|
||||
|
||||
when useWinUnicode:
|
||||
proc createProcessW*(lpApplicationName, lpCommandLine: WideCString,
|
||||
lpProcessAttributes: ptr TSECURITY_ATTRIBUTES,
|
||||
lpThreadAttributes: ptr TSECURITY_ATTRIBUTES,
|
||||
lpProcessAttributes: ptr SECURITY_ATTRIBUTES,
|
||||
lpThreadAttributes: ptr SECURITY_ATTRIBUTES,
|
||||
bInheritHandles: WINBOOL, dwCreationFlags: int32,
|
||||
lpEnvironment, lpCurrentDirectory: WideCString,
|
||||
lpStartupInfo: var TSTARTUPINFO,
|
||||
lpProcessInformation: var TPROCESS_INFORMATION): WINBOOL{.
|
||||
lpStartupInfo: var STARTUPINFO,
|
||||
lpProcessInformation: var PROCESS_INFORMATION): WINBOOL{.
|
||||
stdcall, dynlib: "kernel32", importc: "CreateProcessW".}
|
||||
|
||||
else:
|
||||
proc createProcessA*(lpApplicationName, lpCommandLine: cstring,
|
||||
lpProcessAttributes: ptr TSECURITY_ATTRIBUTES,
|
||||
lpThreadAttributes: ptr TSECURITY_ATTRIBUTES,
|
||||
lpProcessAttributes: ptr SECURITY_ATTRIBUTES,
|
||||
lpThreadAttributes: ptr SECURITY_ATTRIBUTES,
|
||||
bInheritHandles: WINBOOL, dwCreationFlags: int32,
|
||||
lpEnvironment: pointer, lpCurrentDirectory: cstring,
|
||||
lpStartupInfo: var TSTARTUPINFO,
|
||||
lpProcessInformation: var TPROCESS_INFORMATION): WINBOOL{.
|
||||
lpStartupInfo: var STARTUPINFO,
|
||||
lpProcessInformation: var PROCESS_INFORMATION): WINBOOL{.
|
||||
stdcall, dynlib: "kernel32", importc: "CreateProcessA".}
|
||||
|
||||
|
||||
proc suspendThread*(hThread: THandle): int32 {.stdcall, dynlib: "kernel32",
|
||||
proc suspendThread*(hThread: Handle): int32 {.stdcall, dynlib: "kernel32",
|
||||
importc: "SuspendThread".}
|
||||
proc resumeThread*(hThread: THandle): int32 {.stdcall, dynlib: "kernel32",
|
||||
proc resumeThread*(hThread: Handle): int32 {.stdcall, dynlib: "kernel32",
|
||||
importc: "ResumeThread".}
|
||||
|
||||
proc waitForSingleObject*(hHandle: THandle, dwMilliseconds: int32): int32 {.
|
||||
proc waitForSingleObject*(hHandle: Handle, dwMilliseconds: int32): int32 {.
|
||||
stdcall, dynlib: "kernel32", importc: "WaitForSingleObject".}
|
||||
|
||||
proc terminateProcess*(hProcess: THandle, uExitCode: int): WINBOOL {.stdcall,
|
||||
proc terminateProcess*(hProcess: Handle, uExitCode: int): WINBOOL {.stdcall,
|
||||
dynlib: "kernel32", importc: "TerminateProcess".}
|
||||
|
||||
proc getExitCodeProcess*(hProcess: THandle, lpExitCode: var int32): WINBOOL {.
|
||||
proc getExitCodeProcess*(hProcess: Handle, lpExitCode: var int32): WINBOOL {.
|
||||
stdcall, dynlib: "kernel32", importc: "GetExitCodeProcess".}
|
||||
|
||||
proc getStdHandle*(nStdHandle: int32): THandle {.stdcall, dynlib: "kernel32",
|
||||
proc getStdHandle*(nStdHandle: int32): Handle {.stdcall, dynlib: "kernel32",
|
||||
importc: "GetStdHandle".}
|
||||
proc setStdHandle*(nStdHandle: int32, hHandle: THandle): WINBOOL {.stdcall,
|
||||
proc setStdHandle*(nStdHandle: int32, hHandle: Handle): WINBOOL {.stdcall,
|
||||
dynlib: "kernel32", importc: "SetStdHandle".}
|
||||
proc flushFileBuffers*(hFile: THandle): WINBOOL {.stdcall, dynlib: "kernel32",
|
||||
proc flushFileBuffers*(hFile: Handle): WINBOOL {.stdcall, dynlib: "kernel32",
|
||||
importc: "FlushFileBuffers".}
|
||||
|
||||
proc getLastError*(): int32 {.importc: "GetLastError",
|
||||
@@ -193,7 +199,7 @@ when useWinUnicode:
|
||||
proc setEnvironmentVariableW*(lpName, lpValue: WideCString): int32 {.
|
||||
stdcall, dynlib: "kernel32", importc: "SetEnvironmentVariableW".}
|
||||
|
||||
proc getModuleFileNameW*(handle: THandle, buf: WideCString,
|
||||
proc getModuleFileNameW*(handle: Handle, buf: WideCString,
|
||||
size: int32): int32 {.importc: "GetModuleFileNameW",
|
||||
dynlib: "kernel32", stdcall.}
|
||||
else:
|
||||
@@ -208,7 +214,7 @@ else:
|
||||
proc setEnvironmentVariableA*(lpName, lpValue: cstring): int32 {.
|
||||
stdcall, dynlib: "kernel32", importc: "SetEnvironmentVariableA".}
|
||||
|
||||
proc getModuleFileNameA*(handle: THandle, buf: cstring, size: int32): int32 {.
|
||||
proc getModuleFileNameA*(handle: Handle, buf: cstring, size: int32): int32 {.
|
||||
importc: "GetModuleFileNameA", dynlib: "kernel32", stdcall.}
|
||||
|
||||
when useWinUnicode:
|
||||
@@ -239,34 +245,35 @@ const
|
||||
|
||||
MAX_PATH* = 260
|
||||
type
|
||||
TWIN32_FIND_DATA* {.pure.} = object
|
||||
WIN32_FIND_DATA* {.pure.} = object
|
||||
dwFileAttributes*: int32
|
||||
ftCreationTime*: TFILETIME
|
||||
ftLastAccessTime*: TFILETIME
|
||||
ftLastWriteTime*: TFILETIME
|
||||
ftCreationTime*: FILETIME
|
||||
ftLastAccessTime*: FILETIME
|
||||
ftLastWriteTime*: FILETIME
|
||||
nFileSizeHigh*: int32
|
||||
nFileSizeLow*: int32
|
||||
dwReserved0: int32
|
||||
dwReserved1: int32
|
||||
cFileName*: array[0..(MAX_PATH) - 1, TWinChar]
|
||||
cAlternateFileName*: array[0..13, TWinChar]
|
||||
cFileName*: array[0..(MAX_PATH) - 1, WinChar]
|
||||
cAlternateFileName*: array[0..13, WinChar]
|
||||
{.deprecated: [TWIN32_FIND_DATA: WIN32_FIND_DATA].}
|
||||
|
||||
when useWinUnicode:
|
||||
proc findFirstFileW*(lpFileName: WideCString,
|
||||
lpFindFileData: var TWIN32_FIND_DATA): THandle {.
|
||||
lpFindFileData: var WIN32_FIND_DATA): Handle {.
|
||||
stdcall, dynlib: "kernel32", importc: "FindFirstFileW".}
|
||||
proc findNextFileW*(hFindFile: THandle,
|
||||
lpFindFileData: var TWIN32_FIND_DATA): int32 {.
|
||||
proc findNextFileW*(hFindFile: Handle,
|
||||
lpFindFileData: var WIN32_FIND_DATA): int32 {.
|
||||
stdcall, dynlib: "kernel32", importc: "FindNextFileW".}
|
||||
else:
|
||||
proc findFirstFileA*(lpFileName: cstring,
|
||||
lpFindFileData: var TWIN32_FIND_DATA): THANDLE {.
|
||||
lpFindFileData: var WIN32_FIND_DATA): THANDLE {.
|
||||
stdcall, dynlib: "kernel32", importc: "FindFirstFileA".}
|
||||
proc findNextFileA*(hFindFile: THANDLE,
|
||||
lpFindFileData: var TWIN32_FIND_DATA): int32 {.
|
||||
lpFindFileData: var WIN32_FIND_DATA): int32 {.
|
||||
stdcall, dynlib: "kernel32", importc: "FindNextFileA".}
|
||||
|
||||
proc findClose*(hFindFile: THandle) {.stdcall, dynlib: "kernel32",
|
||||
proc findClose*(hFindFile: Handle) {.stdcall, dynlib: "kernel32",
|
||||
importc: "FindClose".}
|
||||
|
||||
when useWinUnicode:
|
||||
@@ -326,32 +333,32 @@ else:
|
||||
proc getCommandLineA*(): cstring {.
|
||||
importc: "GetCommandLineA", stdcall, dynlib: "kernel32".}
|
||||
|
||||
proc rdFileTime*(f: TFILETIME): int64 =
|
||||
proc rdFileTime*(f: FILETIME): int64 =
|
||||
result = ze64(f.dwLowDateTime) or (ze64(f.dwHighDateTime) shl 32)
|
||||
|
||||
proc rdFileSize*(f: TWIN32_FIND_DATA): int64 =
|
||||
proc rdFileSize*(f: WIN32_FIND_DATA): int64 =
|
||||
result = ze64(f.nFileSizeLow) or (ze64(f.nFileSizeHigh) shl 32)
|
||||
|
||||
proc getSystemTimeAsFileTime*(lpSystemTimeAsFileTime: var TFILETIME) {.
|
||||
proc getSystemTimeAsFileTime*(lpSystemTimeAsFileTime: var FILETIME) {.
|
||||
importc: "GetSystemTimeAsFileTime", dynlib: "kernel32", stdcall.}
|
||||
|
||||
proc sleep*(dwMilliseconds: int32){.stdcall, dynlib: "kernel32",
|
||||
importc: "Sleep".}
|
||||
|
||||
when useWinUnicode:
|
||||
proc shellExecuteW*(HWND: THandle, lpOperation, lpFile,
|
||||
proc shellExecuteW*(HWND: Handle, lpOperation, lpFile,
|
||||
lpParameters, lpDirectory: WideCString,
|
||||
nShowCmd: int32): THandle{.
|
||||
nShowCmd: int32): Handle{.
|
||||
stdcall, dynlib: "shell32.dll", importc: "ShellExecuteW".}
|
||||
|
||||
else:
|
||||
proc shellExecuteA*(HWND: THandle, lpOperation, lpFile,
|
||||
proc shellExecuteA*(HWND: Handle, lpOperation, lpFile,
|
||||
lpParameters, lpDirectory: cstring,
|
||||
nShowCmd: int32): THandle{.
|
||||
nShowCmd: int32): Handle{.
|
||||
stdcall, dynlib: "shell32.dll", importc: "ShellExecuteA".}
|
||||
|
||||
proc getFileInformationByHandle*(hFile: THandle,
|
||||
lpFileInformation: ptr TBY_HANDLE_FILE_INFORMATION): WINBOOL{.
|
||||
proc getFileInformationByHandle*(hFile: Handle,
|
||||
lpFileInformation: ptr BY_HANDLE_FILE_INFORMATION): WINBOOL{.
|
||||
stdcall, dynlib: "kernel32", importc: "GetFileInformationByHandle".}
|
||||
|
||||
const
|
||||
@@ -374,7 +381,6 @@ proc wsaGetLastError*(): cint {.importc: "WSAGetLastError", dynlib: ws2dll.}
|
||||
|
||||
type
|
||||
SocketHandle* = distinct int
|
||||
|
||||
{.deprecated: [TSocketHandle: SocketHandle].}
|
||||
|
||||
type
|
||||
@@ -433,7 +439,7 @@ type
|
||||
h_length*: int16
|
||||
h_addr_list*: cstringArray
|
||||
|
||||
TFdSet* = object
|
||||
FdSet* = object
|
||||
fd_count*: cint # unsigned
|
||||
fd_array*: array[0..FD_SETSIZE-1, SocketHandle]
|
||||
|
||||
@@ -451,12 +457,11 @@ type
|
||||
ai_next*: ptr AddrInfo ## Pointer to next in list.
|
||||
|
||||
SockLen* = cuint
|
||||
|
||||
{.deprecated: [TSockaddr_in: Sockaddr_in, TAddrinfo: AddrInfo,
|
||||
TSockAddr: SockAddr, TSockLen: SockLen, TTimeval: Timeval,
|
||||
TWSADATA: WSADATA, Thostent: Hostent, TServent: Servent,
|
||||
TInAddr: InAddr, Tin6_addr: In6_addr, Tsockaddr_in6: Sockaddr_in6,
|
||||
Tsockaddr_in6_old: Sockaddr_in6_old].}
|
||||
Tsockaddr_in6_old: Sockaddr_in6_old, TFdSet: FdSet].}
|
||||
|
||||
|
||||
var
|
||||
@@ -520,7 +525,7 @@ proc recv*(s: SocketHandle, buf: pointer, len, flags: cint): cint {.
|
||||
proc recvfrom*(s: SocketHandle, buf: cstring, len, flags: cint,
|
||||
fromm: ptr SockAddr, fromlen: ptr SockLen): cint {.
|
||||
stdcall, importc: "recvfrom", dynlib: ws2dll.}
|
||||
proc select*(nfds: cint, readfds, writefds, exceptfds: ptr TFdSet,
|
||||
proc select*(nfds: cint, readfds, writefds, exceptfds: ptr FdSet,
|
||||
timeout: ptr Timeval): cint {.
|
||||
stdcall, importc: "select", dynlib: ws2dll.}
|
||||
proc send*(s: SocketHandle, buf: pointer, len, flags: cint): cint {.
|
||||
@@ -540,18 +545,18 @@ proc getnameinfo*(a1: ptr SockAddr, a2: SockLen,
|
||||
proc inet_addr*(cp: cstring): int32 {.
|
||||
stdcall, importc: "inet_addr", dynlib: ws2dll.}
|
||||
|
||||
proc WSAFDIsSet(s: SocketHandle, set: var TFdSet): bool {.
|
||||
proc WSAFDIsSet(s: SocketHandle, set: var FdSet): bool {.
|
||||
stdcall, importc: "__WSAFDIsSet", dynlib: ws2dll, noSideEffect.}
|
||||
|
||||
proc FD_ISSET*(socket: SocketHandle, set: var TFdSet): cint =
|
||||
proc FD_ISSET*(socket: SocketHandle, set: var FdSet): cint =
|
||||
result = if WSAFDIsSet(socket, set): 1'i32 else: 0'i32
|
||||
|
||||
proc FD_SET*(socket: SocketHandle, s: var TFdSet) =
|
||||
proc FD_SET*(socket: SocketHandle, s: var FdSet) =
|
||||
if s.fd_count < FD_SETSIZE:
|
||||
s.fd_array[int(s.fd_count)] = socket
|
||||
inc(s.fd_count)
|
||||
|
||||
proc FD_ZERO*(s: var TFdSet) =
|
||||
proc FD_ZERO*(s: var FdSet) =
|
||||
s.fd_count = 0
|
||||
|
||||
proc wsaStartup*(wVersionRequired: int16, WSData: ptr WSAData): cint {.
|
||||
@@ -571,8 +576,9 @@ const
|
||||
MAXIMUM_WAIT_OBJECTS* = 0x00000040
|
||||
|
||||
type
|
||||
TWOHandleArray* = array[0..MAXIMUM_WAIT_OBJECTS - 1, THandle]
|
||||
PWOHandleArray* = ptr TWOHandleArray
|
||||
WOHandleArray* = array[0..MAXIMUM_WAIT_OBJECTS - 1, Handle]
|
||||
PWOHandleArray* = ptr WOHandleArray
|
||||
{.deprecated: [TWOHandleArray: WOHandleArray].}
|
||||
|
||||
proc waitForMultipleObjects*(nCount: DWORD, lpHandles: PWOHandleArray,
|
||||
bWaitAll: WINBOOL, dwMilliseconds: DWORD): DWORD{.
|
||||
@@ -613,7 +619,7 @@ when useWinUnicode:
|
||||
proc createFileW*(lpFileName: WideCString, dwDesiredAccess, dwShareMode: DWORD,
|
||||
lpSecurityAttributes: pointer,
|
||||
dwCreationDisposition, dwFlagsAndAttributes: DWORD,
|
||||
hTemplateFile: THandle): THandle {.
|
||||
hTemplateFile: Handle): Handle {.
|
||||
stdcall, dynlib: "kernel32", importc: "CreateFileW".}
|
||||
proc deleteFileW*(pathName: WideCString): int32 {.
|
||||
importc: "DeleteFileW", dynlib: "kernel32", stdcall.}
|
||||
@@ -626,28 +632,28 @@ else:
|
||||
proc deleteFileA*(pathName: cstring): int32 {.
|
||||
importc: "DeleteFileA", dynlib: "kernel32", stdcall.}
|
||||
|
||||
proc setEndOfFile*(hFile: THandle): WINBOOL {.stdcall, dynlib: "kernel32",
|
||||
proc setEndOfFile*(hFile: Handle): WINBOOL {.stdcall, dynlib: "kernel32",
|
||||
importc: "SetEndOfFile".}
|
||||
|
||||
proc setFilePointer*(hFile: THandle, lDistanceToMove: LONG,
|
||||
proc setFilePointer*(hFile: Handle, lDistanceToMove: LONG,
|
||||
lpDistanceToMoveHigh: ptr LONG,
|
||||
dwMoveMethod: DWORD): DWORD {.
|
||||
stdcall, dynlib: "kernel32", importc: "SetFilePointer".}
|
||||
|
||||
proc getFileSize*(hFile: THandle, lpFileSizeHigh: ptr DWORD): DWORD{.stdcall,
|
||||
proc getFileSize*(hFile: Handle, lpFileSizeHigh: ptr DWORD): DWORD{.stdcall,
|
||||
dynlib: "kernel32", importc: "GetFileSize".}
|
||||
|
||||
proc mapViewOfFileEx*(hFileMappingObject: THandle, dwDesiredAccess: DWORD,
|
||||
proc mapViewOfFileEx*(hFileMappingObject: Handle, dwDesiredAccess: DWORD,
|
||||
dwFileOffsetHigh, dwFileOffsetLow: DWORD,
|
||||
dwNumberOfBytesToMap: DWORD,
|
||||
lpBaseAddress: pointer): pointer{.
|
||||
stdcall, dynlib: "kernel32", importc: "MapViewOfFileEx".}
|
||||
|
||||
proc createFileMappingW*(hFile: THandle,
|
||||
proc createFileMappingW*(hFile: Handle,
|
||||
lpFileMappingAttributes: pointer,
|
||||
flProtect, dwMaximumSizeHigh: DWORD,
|
||||
dwMaximumSizeLow: DWORD,
|
||||
lpName: pointer): THandle {.
|
||||
lpName: pointer): Handle {.
|
||||
stdcall, dynlib: "kernel32", importc: "CreateFileMappingW".}
|
||||
|
||||
when not useWinUnicode:
|
||||
@@ -661,23 +667,24 @@ proc unmapViewOfFile*(lpBaseAddress: pointer): WINBOOL {.stdcall,
|
||||
dynlib: "kernel32", importc: "UnmapViewOfFile".}
|
||||
|
||||
type
|
||||
TOVERLAPPED* {.pure, inheritable.} = object
|
||||
OVERLAPPED* {.pure, inheritable.} = object
|
||||
internal*: PULONG
|
||||
internalHigh*: PULONG
|
||||
offset*: DWORD
|
||||
offsetHigh*: DWORD
|
||||
hEvent*: THandle
|
||||
hEvent*: Handle
|
||||
|
||||
POVERLAPPED* = ptr TOVERLAPPED
|
||||
POVERLAPPED* = ptr OVERLAPPED
|
||||
|
||||
POVERLAPPED_COMPLETION_ROUTINE* = proc (para1: DWORD, para2: DWORD,
|
||||
para3: POVERLAPPED){.stdcall.}
|
||||
|
||||
TGUID* {.final, pure.} = object
|
||||
GUID* {.final, pure.} = object
|
||||
D1*: int32
|
||||
D2*: int16
|
||||
D3*: int16
|
||||
D4*: array [0..7, int8]
|
||||
{.deprecated: [TOVERLAPPED: OVERLAPPED, TGUID: GUID].}
|
||||
|
||||
const
|
||||
ERROR_IO_PENDING* = 997 # a.k.a WSA_IO_PENDING
|
||||
@@ -689,18 +696,18 @@ const
|
||||
WSAETIMEDOUT* = 10060
|
||||
ERROR_NETNAME_DELETED* = 64
|
||||
|
||||
proc createIoCompletionPort*(FileHandle: THandle, ExistingCompletionPort: THandle,
|
||||
proc createIoCompletionPort*(FileHandle: Handle, ExistingCompletionPort: Handle,
|
||||
CompletionKey: DWORD,
|
||||
NumberOfConcurrentThreads: DWORD): THandle{.stdcall,
|
||||
NumberOfConcurrentThreads: DWORD): Handle{.stdcall,
|
||||
dynlib: "kernel32", importc: "CreateIoCompletionPort".}
|
||||
|
||||
proc getQueuedCompletionStatus*(CompletionPort: THandle,
|
||||
proc getQueuedCompletionStatus*(CompletionPort: Handle,
|
||||
lpNumberOfBytesTransferred: PDWORD, lpCompletionKey: PULONG,
|
||||
lpOverlapped: ptr POVERLAPPED,
|
||||
dwMilliseconds: DWORD): WINBOOL{.stdcall,
|
||||
dynlib: "kernel32", importc: "GetQueuedCompletionStatus".}
|
||||
|
||||
proc getOverlappedResult*(hFile: THandle, lpOverlapped: TOVERLAPPED,
|
||||
proc getOverlappedResult*(hFile: Handle, lpOverlapped: OVERLAPPED,
|
||||
lpNumberOfBytesTransferred: var DWORD, bWait: WINBOOL): WINBOOL{.
|
||||
stdcall, dynlib: "kernel32", importc: "GetOverlappedResult".}
|
||||
|
||||
@@ -717,11 +724,11 @@ const
|
||||
SO_UPDATE_ACCEPT_CONTEXT* = 0x700B
|
||||
|
||||
var
|
||||
WSAID_CONNECTEX*: TGUID = TGUID(D1: 0x25a207b9, D2: 0xddf3'i16, D3: 0x4660, D4: [
|
||||
WSAID_CONNECTEX*: GUID = GUID(D1: 0x25a207b9, D2: 0xddf3'i16, D3: 0x4660, D4: [
|
||||
0x8e'i8, 0xe9'i8, 0x76'i8, 0xe5'i8, 0x8c'i8, 0x74'i8, 0x06'i8, 0x3e'i8])
|
||||
WSAID_ACCEPTEX*: TGUID = TGUID(D1: 0xb5367df1'i32, D2: 0xcbac'i16, D3: 0x11cf, D4: [
|
||||
WSAID_ACCEPTEX*: GUID = GUID(D1: 0xb5367df1'i32, D2: 0xcbac'i16, D3: 0x11cf, D4: [
|
||||
0x95'i8, 0xca'i8, 0x00'i8, 0x80'i8, 0x5f'i8, 0x48'i8, 0xa1'i8, 0x92'i8])
|
||||
WSAID_GETACCEPTEXSOCKADDRS*: TGUID = TGUID(D1: 0xb5367df2'i32, D2: 0xcbac'i16, D3: 0x11cf, D4: [
|
||||
WSAID_GETACCEPTEXSOCKADDRS*: GUID = GUID(D1: 0xb5367df2'i32, D2: 0xcbac'i16, D3: 0x11cf, D4: [
|
||||
0x95'i8, 0xca'i8, 0x00'i8, 0x80'i8, 0x5f'i8, 0x48'i8, 0xa1'i8, 0x92'i8])
|
||||
|
||||
proc WSAIoctl*(s: SocketHandle, dwIoControlCode: DWORD, lpvInBuffer: pointer,
|
||||
@@ -745,13 +752,13 @@ proc WSASend*(s: SocketHandle, buf: ptr TWSABuf, bufCount: DWORD,
|
||||
completionProc: POVERLAPPED_COMPLETION_ROUTINE): cint {.
|
||||
stdcall, importc: "WSASend", dynlib: "Ws2_32.dll".}
|
||||
|
||||
proc get_osfhandle*(fd:FileHandle): THandle {.
|
||||
proc get_osfhandle*(fd:FileHandle): Handle {.
|
||||
importc: "_get_osfhandle", header:"<io.h>".}
|
||||
|
||||
proc getSystemTimes*(lpIdleTime, lpKernelTime,
|
||||
lpUserTime: var TFILETIME): WINBOOL {.stdcall,
|
||||
lpUserTime: var FILETIME): WINBOOL {.stdcall,
|
||||
dynlib: "kernel32", importc: "GetSystemTimes".}
|
||||
|
||||
proc getProcessTimes*(hProcess: THandle; lpCreationTime, lpExitTime,
|
||||
lpKernelTime, lpUserTime: var TFILETIME): WINBOOL {.stdcall,
|
||||
proc getProcessTimes*(hProcess: Handle; lpCreationTime, lpExitTime,
|
||||
lpKernelTime, lpUserTime: var FILETIME): WINBOOL {.stdcall,
|
||||
dynlib: "kernel32", importc: "GetProcessTimes".}
|
||||
|
||||
Reference in New Issue
Block a user