1 // Copyright © 2015, Peter Atashian 2 // Licensed under the MIT License <LICENSE.md> 3 STRUCT!{struct PROCESS_INFORMATION { 4 hProcess: ::HANDLE, 5 hThread: ::HANDLE, 6 dwProcessId: ::DWORD, 7 dwThreadId: ::DWORD, 8 }} 9 pub type PPROCESS_INFORMATION = *mut PROCESS_INFORMATION; 10 pub type LPPROCESS_INFORMATION = *mut PROCESS_INFORMATION; 11 STRUCT!{struct STARTUPINFOA { 12 cb: ::DWORD, 13 lpReserved: ::LPSTR, 14 lpDesktop: ::LPSTR, 15 lpTitle: ::LPSTR, 16 dwX: ::DWORD, 17 dwY: ::DWORD, 18 dwXSize: ::DWORD, 19 dwYSize: ::DWORD, 20 dwXCountChars: ::DWORD, 21 dwYCountChars: ::DWORD, 22 dwFillAttribute: ::DWORD, 23 dwFlags: ::DWORD, 24 wShowWindow: ::WORD, 25 cbReserved2: ::WORD, 26 lpReserved2: ::LPBYTE, 27 hStdInput: ::HANDLE, 28 hStdOutput: ::HANDLE, 29 hStdError: ::HANDLE, 30 }} 31 pub type LPSTARTUPINFOA = *mut STARTUPINFOA; 32 STRUCT!{struct STARTUPINFOW { 33 cb: ::DWORD, 34 lpReserved: ::LPWSTR, 35 lpDesktop: ::LPWSTR, 36 lpTitle: ::LPWSTR, 37 dwX: ::DWORD, 38 dwY: ::DWORD, 39 dwXSize: ::DWORD, 40 dwYSize: ::DWORD, 41 dwXCountChars: ::DWORD, 42 dwYCountChars: ::DWORD, 43 dwFillAttribute: ::DWORD, 44 dwFlags: ::DWORD, 45 wShowWindow: ::WORD, 46 cbReserved2: ::WORD, 47 lpReserved2: ::LPBYTE, 48 hStdInput: ::HANDLE, 49 hStdOutput: ::HANDLE, 50 hStdError: ::HANDLE, 51 }} 52 pub type LPSTARTUPINFOW = *mut STARTUPINFOW; 53 STRUCT!{struct PROC_THREAD_ATTRIBUTE_LIST { 54 dummy: *mut ::c_void, 55 }} 56 pub type PPROC_THREAD_ATTRIBUTE_LIST = *mut PROC_THREAD_ATTRIBUTE_LIST; 57 pub type LPPROC_THREAD_ATTRIBUTE_LIST = *mut PROC_THREAD_ATTRIBUTE_LIST; 58 ENUM!{enum THREAD_INFORMATION_CLASS { 59 ThreadMemoryPriority, 60 ThreadAbsoluteCpuPriority, 61 ThreadInformationClassMax, 62 }} 63