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