• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 202
  • Last Modified:

Communicating between programs

I have written a program in Visual c++.  I wanted the program to only be able to run once.(if the desktop icon was clicked while it was running it was just restored)  I did this by:

     HWND AlreadyThere = FindWindow(NULL,"My Main Windows Name")
     If(AlreadyThere != 0)
          ShowWindow(AlreadyThere, SW_RESTORE);
          return 0;

But now I want to take it a step further.  Instead of calling a ShowWindow(AlreadyThere, SW_RESTORE); I want to send a Message to AlreadyThere so I can Have my Program do some extra stuff when it was restored by way of double clicking the desktop icon

Any help
1 Solution
You can send a custom message to your function.
define your own message with


And when you find there is an instance of your program already running (by the way, you might want to take a look at MSDN - WinMain; look at hPrevInstance paramete, you'll find there how you find out if an instance of your program is already running) you just do a
SendMessage(your_Wnd_handle,WM_DO_COOL_TRICKS,0,0), if you won't pass any params in WParam and LPARAM and then, in the window receiving the message, treat the message in the big case structure of your window callback function.
This old question needs to be finalized -- accept an answer, split points, or get a refund.  For information on your options, please click here-> http:/help/closing.jsp#1 
Post your closing recommendations!  No comment means you don't care.

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now