I use DDE to get updates from another application. Sometimes, when my application closes, the DDE connection with the server is not closed properly. In these cases, my application is still subscribed to receive updates. If I try to connect again, my application hangs when using the method ::DdeConnect() . I presume it hangs because the server already thinks my application is registered to receive updates. Is there anyway I can check to see whether my application is already registered on the DDE server? If so, how can I terminate it?