Tom Lane wrote:
  Have M$ really been stupid
enough to make an external kill look just like an exit() call?

			regards, tom lane

  
kind of :-(

Everything i have read seems to point the Task Manager calls TerminateProcess() in the kernel32.dll and passes a 1 setting the exitcode to 1.  I have not found anything clearly stating that, yet logic points that is what its doing. 

http://msdn.microsoft.com/en-us/library/ms686714(VS.85).aspx

Would it not be easy to set the normal exitcode to something other than 1 to see the difference
ExitProcess()
http://msdn.microsoft.com/en-us/library/ms682658(VS.85).aspx


 this article maybe helpful. 
http://msdn.microsoft.com/en-us/library/ms686722(VS.85).aspx

BTW tested on Windows 2003 SP1  this problem shows up in Postgresql 8.3.3