diff options
Diffstat (limited to 'lib/windows/psapi.nim')
-rw-r--r-- | lib/windows/psapi.nim | 85 |
1 files changed, 45 insertions, 40 deletions
diff --git a/lib/windows/psapi.nim b/lib/windows/psapi.nim index da4ac31f0..7d53cf7ca 100644 --- a/lib/windows/psapi.nim +++ b/lib/windows/psapi.nim @@ -6,6 +6,7 @@ # See the file "copying.txt", included in this # distribution, for details about the copyright. # + # PSAPI interface unit # Contains the definitions for the APIs provided by PSAPI.DLL @@ -13,32 +14,36 @@ import # Data structure templates Windows -proc EnumProcesses*(lpidProcess: ptr DWORD, cb: DWORD, cbNeeded: ptr DWORD): WINBOOL {.stdcall, - dynlib: "psapi.dll", importc: "EnumProcesses".} +const + psapiDll = "psapi.dll" + +proc EnumProcesses*(lpidProcess: ptr DWORD, cb: DWORD, + cbNeeded: ptr DWORD): WINBOOL {.stdcall, + dynlib: psapiDll, importc: "EnumProcesses".} proc EnumProcessModules*(hProcess: HANDLE, lphModule: ptr HMODULE, cb: DWORD, lpcbNeeded: LPDWORD): WINBOOL {.stdcall, - dynlib: "psapi.dll", importc: "EnumProcessModules".} + dynlib: psapiDll, importc: "EnumProcessModules".} proc GetModuleBaseNameA*(hProcess: HANDLE, hModule: HMODULE, lpBaseName: LPSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetModuleBaseNameA".} + dynlib: psapiDll, importc: "GetModuleBaseNameA".} proc GetModuleBaseNameW*(hProcess: HANDLE, hModule: HMODULE, lpBaseName: LPWSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetModuleBaseNameW".} + dynlib: psapiDll, importc: "GetModuleBaseNameW".} when defined(winUnicode): proc GetModuleBaseName*(hProcess: HANDLE, hModule: HMODULE, lpBaseName: LPWSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetModuleBaseNameW".} + dynlib: psapiDll, importc: "GetModuleBaseNameW".} else: proc GetModuleBaseName*(hProcess: HANDLE, hModule: HMODULE, lpBaseName: LPSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetModuleBaseNameA".} + dynlib: psapiDll, importc: "GetModuleBaseNameA".} proc GetModuleFileNameExA*(hProcess: HANDLE, hModule: HMODULE, lpFileNameEx: LPSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetModuleFileNameExA".} + dynlib: psapiDll, importc: "GetModuleFileNameExA".} proc GetModuleFileNameExW*(hProcess: HANDLE, hModule: HMODULE, lpFileNameEx: LPWSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetModuleFileNameExW".} + dynlib: psapiDll, importc: "GetModuleFileNameExW".} when defined(winUnicode): proc GetModuleFileNameEx*(hProcess: HANDLE, hModule: HMODULE, lpFileNameEx: LPWSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetModuleFileNameExW".} + dynlib: psapiDll, importc: "GetModuleFileNameExW".} else: proc GetModuleFileNameEx*(hProcess: HANDLE, hModule: HMODULE, lpFileNameEx: LPSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetModuleFileNameExA".} + dynlib: psapiDll, importc: "GetModuleFileNameExA".} type MODULEINFO* {.final.} = object @@ -48,15 +53,15 @@ type LPMODULEINFO* = ptr MODULEINFO proc GetModuleInformation*(hProcess: HANDLE, hModule: HMODULE, lpmodinfo: LPMODULEINFO, cb: DWORD): WINBOOL {.stdcall, - dynlib: "psapi.dll", importc: "GetModuleInformation".} + dynlib: psapiDll, importc: "GetModuleInformation".} proc EmptyWorkingSet*(hProcess: HANDLE): WINBOOL {.stdcall, - dynlib: "psapi.dll", importc: "EmptyWorkingSet".} + dynlib: psapiDll, importc: "EmptyWorkingSet".} proc QueryWorkingSet*(hProcess: HANDLE, pv: PVOID, cb: DWORD): WINBOOL {.stdcall, - dynlib: "psapi.dll", importc: "QueryWorkingSet".} + dynlib: psapiDll, importc: "QueryWorkingSet".} proc QueryWorkingSetEx*(hProcess: HANDLE, pv: PVOID, cb: DWORD): WINBOOL {.stdcall, - dynlib: "psapi.dll", importc: "QueryWorkingSetEx".} + dynlib: psapiDll, importc: "QueryWorkingSetEx".} proc InitializeProcessForWsWatch*(hProcess: HANDLE): WINBOOL {.stdcall, - dynlib: "psapi.dll", importc: "InitializeProcessForWsWatch".} + dynlib: psapiDll, importc: "InitializeProcessForWsWatch".} type PSAPI_WS_WATCH_INFORMATION* {.final.} = object @@ -65,43 +70,43 @@ type PPSAPI_WS_WATCH_INFORMATION* = ptr PSAPI_WS_WATCH_INFORMATION proc GetWsChanges*(hProcess: HANDLE, lpWatchInfo: PPSAPI_WS_WATCH_INFORMATION, cb: DWORD): WINBOOL {.stdcall, - dynlib: "psapi.dll", importc: "GetWsChanges".} + dynlib: psapiDll, importc: "GetWsChanges".} proc GetMappedFileNameA*(hProcess: HANDLE, lpv: LPVOID, lpFilename: LPSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetMappedFileNameA".} + dynlib: psapiDll, importc: "GetMappedFileNameA".} proc GetMappedFileNameW*(hProcess: HANDLE, lpv: LPVOID, lpFilename: LPWSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetMappedFileNameW".} + dynlib: psapiDll, importc: "GetMappedFileNameW".} when defined(winUnicode): proc GetMappedFileName*(hProcess: HANDLE, lpv: LPVOID, lpFilename: LPWSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetMappedFileNameW".} + dynlib: psapiDll, importc: "GetMappedFileNameW".} else: proc GetMappedFileName*(hProcess: HANDLE, lpv: LPVOID, lpFilename: LPSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetMappedFileNameA".} + dynlib: psapiDll, importc: "GetMappedFileNameA".} proc EnumDeviceDrivers*(lpImageBase: LPVOID, cb: DWORD, lpcbNeeded: LPDWORD): WINBOOL {.stdcall, - dynlib: "psapi.dll", importc: "EnumDeviceDrivers".} + dynlib: psapiDll, importc: "EnumDeviceDrivers".} proc GetDeviceDriverBaseNameA*(ImageBase: LPVOID, lpBaseName: LPSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetDeviceDriverBaseNameA".} + dynlib: psapiDll, importc: "GetDeviceDriverBaseNameA".} proc GetDeviceDriverBaseNameW*(ImageBase: LPVOID, lpBaseName: LPWSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetDeviceDriverBaseNameW".} + dynlib: psapiDll, importc: "GetDeviceDriverBaseNameW".} when defined(winUnicode): proc GetDeviceDriverBaseName*(ImageBase: LPVOID, lpBaseName: LPWSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetDeviceDriverBaseNameW".} + dynlib: psapiDll, importc: "GetDeviceDriverBaseNameW".} else: proc GetDeviceDriverBaseName*(ImageBase: LPVOID, lpBaseName: LPSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetDeviceDriverBaseNameA".} + dynlib: psapiDll, importc: "GetDeviceDriverBaseNameA".} proc GetDeviceDriverFileNameA*(ImageBase: LPVOID, lpFileName: LPSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetDeviceDriverFileNameA".} + dynlib: psapiDll, importc: "GetDeviceDriverFileNameA".} proc GetDeviceDriverFileNameW*(ImageBase: LPVOID, lpFileName: LPWSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetDeviceDriverFileNameW".} + dynlib: psapiDll, importc: "GetDeviceDriverFileNameW".} when defined(winUnicode): proc GetDeviceDriverFileName*(ImageBase: LPVOID, lpFileName: LPWSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetDeviceDriverFileNameW".} + dynlib: psapiDll, importc: "GetDeviceDriverFileNameW".} else: proc GetDeviceDriverFileName*(ImageBase: LPVOID, lpFileName: LPSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetDeviceDriverFileNameA".} + dynlib: psapiDll, importc: "GetDeviceDriverFileNameA".} type PROCESS_MEMORY_COUNTERS* {.final.} = object @@ -133,7 +138,7 @@ type PPROCESS_MEMORY_COUNTERS_EX* = ptr PROCESS_MEMORY_COUNTERS_EX proc GetProcessMemoryInfo*(hProcess: HANDLE, ppsmemCounters: PPROCESS_MEMORY_COUNTERS, cb: DWORD): WINBOOL {.stdcall, - dynlib: "psapi.dll", importc: "GetProcessMemoryInfo".} + dynlib: psapiDll, importc: "GetProcessMemoryInfo".} type PERFORMANCE_INFORMATION* {.final.} = object @@ -155,7 +160,7 @@ type # Skip definition of PERFORMACE_INFORMATION... proc GetPerformanceInfo*(pPerformanceInformation: PPERFORMANCE_INFORMATION, cb: DWORD): WINBOOL {.stdcall, - dynlib: "psapi.dll", importc: "GetPerformanceInfo".} + dynlib: psapiDll, importc: "GetPerformanceInfo".} type ENUM_PAGE_FILE_INFORMATION* {.final.} = object @@ -173,25 +178,25 @@ type #TODO proc EnumPageFilesA*(pCallBackRoutine: PENUM_PAGE_FILE_CALLBACKA, pContext: LPVOID): WINBOOL {.stdcall, - dynlib: "psapi.dll", importc: "EnumPageFilesA".} + dynlib: psapiDll, importc: "EnumPageFilesA".} proc EnumPageFilesW*(pCallBackRoutine: PENUM_PAGE_FILE_CALLBACKW, pContext: LPVOID): WINBOOL {.stdcall, - dynlib: "psapi.dll", importc: "EnumPageFilesW".} + dynlib: psapiDll, importc: "EnumPageFilesW".} when defined(winUnicode): proc EnumPageFiles*(pCallBackRoutine: PENUM_PAGE_FILE_CALLBACKW, pContext: LPVOID): WINBOOL {.stdcall, - dynlib: "psapi.dll", importc: "EnumPageFilesW".} + dynlib: psapiDll, importc: "EnumPageFilesW".} type PENUM_PAGE_FILE_CALLBACK* = proc (pContext: LPVOID, pPageFileInfo: PENUM_PAGE_FILE_INFORMATION, lpFilename: LPCWSTR): WINBOOL{.stdcall.} else: proc EnumPageFiles*(pCallBackRoutine: PENUM_PAGE_FILE_CALLBACKA, pContext: LPVOID): WINBOOL {.stdcall, - dynlib: "psapi.dll", importc: "EnumPageFilesA".} + dynlib: psapiDll, importc: "EnumPageFilesA".} type PENUM_PAGE_FILE_CALLBACK* = proc (pContext: LPVOID, pPageFileInfo: PENUM_PAGE_FILE_INFORMATION, lpFilename: LPCSTR): WINBOOL{.stdcall.} proc GetProcessImageFileNameA*(hProcess: HANDLE, lpImageFileName: LPSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetProcessImageFileNameA".} + dynlib: psapiDll, importc: "GetProcessImageFileNameA".} proc GetProcessImageFileNameW*(hProcess: HANDLE, lpImageFileName: LPWSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetProcessImageFileNameW".} + dynlib: psapiDll, importc: "GetProcessImageFileNameW".} when defined(winUnicode): proc GetProcessImageFileName*(hProcess: HANDLE, lpImageFileName: LPWSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetProcessImageFileNameW".} + dynlib: psapiDll, importc: "GetProcessImageFileNameW".} else: proc GetProcessImageFileName*(hProcess: HANDLE, lpImageFileName: LPSTR, nSize: DWORD): DWORD {.stdcall, - dynlib: "psapi.dll", importc: "GetProcessImageFileNameA".} + dynlib: psapiDll, importc: "GetProcessImageFileNameA".} |