Actually, I made some headway by calling QCoreApplication::ProcessEvents rather than QCoreApplication::exec which totally make since because exec is blocking. It still isnt working 100% but I am hoping that if create a timer event and call ProcessEvents from it periodically that it may work.