1 /******************************************************************************
2 * Process Manager Functions *
3 ******************************************************************************/
10 IN OUT PVOID
*ApcContext
,
11 IN OUT PVOID
*ApcRoutine
);
15 * PsGetCurrentProcess(VOID)
17 #define PsGetCurrentProcess IoGetCurrentProcess
19 #if !defined(_PSGETCURRENTTHREAD_)
20 #define _PSGETCURRENTTHREAD_
24 PsGetCurrentThread(VOID
)
26 return (PETHREAD
)KeGetCurrentThread();
28 #endif /* !_PSGETCURRENTTHREAD_ */
37 OUT PHANDLE ProcessHandle
,
38 IN ACCESS_MASK DesiredAccess
,
39 IN POBJECT_ATTRIBUTES ObjectAttributes
,
40 IN PCLIENT_ID ClientId OPTIONAL
);
45 NtQueryInformationProcess(
46 IN HANDLE ProcessHandle
,
47 IN PROCESSINFOCLASS ProcessInformationClass
,
48 OUT PVOID ProcessInformation OPTIONAL
,
49 IN ULONG ProcessInformationLength
,
50 OUT PULONG ReturnLength OPTIONAL
);
53 #if (NTDDI_VERSION >= NTDDI_WIN2K)
60 OUT PHANDLE ThreadHandle
,
61 IN ULONG DesiredAccess
,
62 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL
,
63 IN HANDLE ProcessHandle OPTIONAL
,
64 OUT PCLIENT_ID ClientId OPTIONAL
,
65 IN PKSTART_ROUTINE StartRoutine
,
66 IN PVOID StartContext OPTIONAL
);
71 PsTerminateSystemThread(
72 IN NTSTATUS ExitStatus
);
80 PsSetCreateProcessNotifyRoutine(
81 IN PCREATE_PROCESS_NOTIFY_ROUTINE NotifyRoutine
,
87 PsSetCreateThreadNotifyRoutine(
88 IN PCREATE_THREAD_NOTIFY_ROUTINE NotifyRoutine
);
93 PsSetLoadImageNotifyRoutine(
94 IN PLOAD_IMAGE_NOTIFY_ROUTINE NotifyRoutine
);
99 PsGetCurrentProcessId(VOID
);
104 PsGetCurrentThreadId(VOID
);
110 OUT PULONG MajorVersion OPTIONAL
,
111 OUT PULONG MinorVersion OPTIONAL
,
112 OUT PULONG BuildNumber OPTIONAL
,
113 OUT PUNICODE_STRING CSDVersion OPTIONAL
);
116 #endif /* (NTDDI_VERSION >= NTDDI_WIN2K) */
119 #if (NTDDI_VERSION >= NTDDI_WINXP)
125 IN PEPROCESS Process
);
136 PsRemoveCreateThreadNotifyRoutine(
137 IN PCREATE_THREAD_NOTIFY_ROUTINE NotifyRoutine
);
142 PsRemoveLoadImageNotifyRoutine(
143 IN PLOAD_IMAGE_NOTIFY_ROUTINE NotifyRoutine
);
148 PsGetProcessCreateTimeQuadPart(
149 IN PEPROCESS Process
);
151 #endif /* (NTDDI_VERSION >= NTDDI_WINXP) */
153 #if (NTDDI_VERSION >= NTDDI_WS03)
157 PsGetThreadProcessId(
159 #endif /* (NTDDI_VERSION >= NTDDI_WS03) */
161 #if (NTDDI_VERSION >= NTDDI_VISTA)
166 PsSetCurrentThreadPrefetching(
167 IN BOOLEAN Prefetching
);
172 PsIsCurrentThreadPrefetching(VOID
);
174 #endif /* (NTDDI_VERSION >= NTDDI_VISTA) */
176 #if (NTDDI_VERSION >= NTDDI_VISTASP1)
180 PsSetCreateProcessNotifyRoutineEx(
181 IN PCREATE_PROCESS_NOTIFY_ROUTINE_EX NotifyRoutine
,
183 #endif /* (NTDDI_VERSION >= NTDDI_VISTASP1) */