FWIW... console programs don't usually "windowize" very gracefully... most often you end up doing a complete rewrite to get it to work.
I would have to concur on this 100%
The logic of program flow, as far as any user interaction goes is simply different in a threaded Windows system than it is in a more "linear" console/DOS environment...
And as far as finding out why and where your program crashes, you should take a serious look at the build-in debugging features of Pelle's C, like setting breakpoints and watches on variables...
Ralf