return STATUS_NOT_IMPLEMENTED;
}
+NTSTATUS STDCALL DbgUiRemoteBreakin(VOID)
+{
+ DbgBreakPoint();
+
+ RtlExitUserThread(0);
+
+ DbgBreakPoint();
+}
+
+NTSTATUS STDCALL DbgUiIssueRemoteBreakin(HANDLE Process)
+{
+ HANDLE hThread;
+ CLIENT_ID cidClientId;
+ NTSTATUS nErrCode;
+ ULONG nStackSize = PAGE_SIZE;
+
+ nErrCode = RtlCreateUserThread
+ (
+ Process,
+ NULL,
+ FALSE,
+ 0,
+ &nStackSize,
+ &nStackSize,
+ (PTHREAD_START_ROUTINE)DbgUiRemoteBreakin,
+ NULL,
+ &hThread,
+ &cidClientId
+ );
+
+ if(!NT_SUCCESS(nErrCode)) return nErrCode;
+
+ NtClose(hThread);
+
+ return STATUS_SUCCESS;
+}
+
/* EOF */