I have an installation program that is written in win32 that needs to call a bunch of old win16 programs that will actually do the installation.
I would like to give the user the ability to abort the intallation process as these win16 programs have been known to lock up. But if I call TerminateProccess() on the 16 bit process handle it does not termiante the proccess. The TerminateProccess Prcedure returns 0--indicating an error occured and GetLastError() returns 6--indicating that the handle is invalid.
However the handle is not invalid. If I replace the 16 bit program EXEs with 32 bit "dummy" EXEs, then I can kill the 32 bit process fine (with the identical code--no need to even recompile.)
Why can't I kill the 19 bit processes and is there a way to do so?
This was tested under NT only. It needs to work in NT, 98, and 95.