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