I am working in Windows VS2003 and my app has to do with hardware security interfaces. I am NOT using .NET.
My problem started when I decided to multi-thread an automation out-of-process server. The server has a GUI and the GUI was moved to the 2nd CWinThread. Since then, repeated hits of ShowWindow( SW_HIDE ) etc does not work on the 2nd dialog ( the one in the additional CWinThread ) but will activate the 1st dialog, which now purely exists to assist in generating "blocking calls" from the client.
The other methods in the interface ( IDL and DlgAutoProxy ) work fine.
Does the fact that I made this a multi-threaded application have anything to do with my problem and will the IMPLEMENT_OLECREATE2 macro fix this if I change the TRUE to FALSE.