Why not use NtTerminateProcess() for non-native apps?
Am 10.01.2013 02:45, schrieb hbelu...@svn.reactos.org:
+/* + * Declare a target-dependent process termination procedure. + */ +#ifndef_NTDDK_ /* User-Mode */ + #ifndef NTOS_MODE_USER /* Should be Win32 */ + #ifndef _WIN32 + #error "Unsupported target." + #else + #define TerminateCurrentProcess(Status) TerminateProcess(GetCurrentProcess(), (Status)) + #endif + #else /* Native */ + #ifndef _PSFUNCS_H + NTSYSCALLAPI + NTSTATUS + NTAPI + NtTerminateProcess( + IN HANDLE ProcessHandle, + IN NTSTATUS ExitStatus + ); + #endif + #ifndef NtCurrentProcess + #define NtCurrentProcess() ((HANDLE)(LONG_PTR)-1) + #endif + #define TerminateCurrentProcess(Status) NtTerminateProcess(NtCurrentProcess(), (Status)) + #endif +#else /* Kernel-Mode */ + #include <bugcodes.h> + #define TerminateCurrentProcess(Status) KeBugCheckEx(CRITICAL_SERVICE_FAILED, (Status), 0, 0, 0) +#endif +
_______________________________________________ Ros-dev mailing list Ros-dev@reactos.org http://www.reactos.org/mailman/listinfo/ros-dev