Why does regedit.exe (or any other Microsoft program) crash when I try to create a remote thread into it using the CreateRemoteThread() API?

Question: On Windows XP, I am starting regedit.exe in suspended mode and forcing it to call the LoadLibrary() API to load an external DLL by using the CreateRemoteThread() API.  After loading the DLL, when I try to resume the suspended thread, the application terminates. Why is this form of extending an application not supported by…