Click here to Skip to main content
15,896,489 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralDialog Windows Hidden Problem :: MFC Pin
valikac27-Nov-02 18:12
valikac27-Nov-02 18:12 
GeneralRe: Dialog Windows Hidden Problem :: MFC Pin
Peak27-Nov-02 20:31
Peak27-Nov-02 20:31 
GeneralRe: Dialog Windows Hidden Problem :: MFC Pin
valikac28-Nov-02 5:40
valikac28-Nov-02 5:40 
General"DestroyWindow" ---- Error!!!! Pin
liuty200627-Nov-02 17:21
liuty200627-Nov-02 17:21 
GeneralRe: "DestroyWindow" ---- Error!!!! Pin
Peak27-Nov-02 20:28
Peak27-Nov-02 20:28 
GeneralLoadLibrary and STDAPI Pin
devvvy27-Nov-02 16:55
devvvy27-Nov-02 16:55 
GeneralDocument Class and Dialog Windows :: MFC Pin
valikac27-Nov-02 16:02
valikac27-Nov-02 16:02 
GeneralRe: Document Class and Dialog Windows :: MFC Pin
Jonathan Craig27-Nov-02 16:32
Jonathan Craig27-Nov-02 16:32 
I'm sure there are a million answers to your question. But I would stick to the message solution. It is the best way for windows to communicate. I would not pass pointers to class objects around to be used. That could be potentially dangerous. If the WPARAM and LPARAM parameters seem to limiting remember you can allocate memory (or objects; classes, structs, etc.) and pass the pointer to another window through a message.
if(IsWindow(hwnd))
{
  CThing *pThing = new CThing;
  PostMessage(hwnd, WM_NEW_THING, 0, (LPARAM)pThing);
}
Just remember the receiver of the message is responible for deleting the memory.
long CMyWnd::OnNewThing(WPARAM wParam, LPARAM lParam)
{
  ASSERT(lParam);
  CThing *pThing = (CThing *)lParam;
  ...
  delete pThing;
}
One more thing, in the OnDestory method of the CWnd class make sure you have no more WM_NEW_THING messages in the queue. Their memory should be deleted if they are.
MSG msg;
while(::PeekMessage(&msg, (HWND)NULL, WM_NEW_THING, WM_NEW_THING, PM_REMOVE))
{
  CThing *pThing = (CThing *)msg.lParam;
  delete pThing;
}
Hope this helps.

Jonathan Craig
www.mcw-tech.com
GeneralRe: Document Class and Dialog Windows :: MFC Pin
valikac27-Nov-02 16:36
valikac27-Nov-02 16:36 
QuestionHow can i start or stop Services Program which on the remote PC Pin
KeithPRC27-Nov-02 15:30
KeithPRC27-Nov-02 15:30 
AnswerRe: How can i start or stop Services Program which on the remote PC Pin
Christian Graus27-Nov-02 16:46
protectorChristian Graus27-Nov-02 16:46 
Generalcopy file - simple question Pin
devvvy27-Nov-02 13:34
devvvy27-Nov-02 13:34 
GeneralRe: copy file - simple question Pin
Dave Bryant27-Nov-02 13:52
Dave Bryant27-Nov-02 13:52 
GeneralRe: copy file - simple question Pin
devvvy27-Nov-02 14:31
devvvy27-Nov-02 14:31 
GeneralUsing all processors when compiling on a SMP machine Pin
MeeLoo27-Nov-02 12:35
MeeLoo27-Nov-02 12:35 
GeneralRe: Using all processors when compiling on a SMP machine Pin
Christian Graus27-Nov-02 13:08
protectorChristian Graus27-Nov-02 13:08 
GeneralRe: Using all processors when compiling on a SMP machine Pin
MeeLoo27-Nov-02 13:21
MeeLoo27-Nov-02 13:21 
GeneralRe: Using all processors when compiling on a SMP machine Pin
Christian Graus27-Nov-02 14:46
protectorChristian Graus27-Nov-02 14:46 
GeneralRe: Using all processors when compiling on a SMP machine Pin
MeeLoo28-Nov-02 0:50
MeeLoo28-Nov-02 0:50 
GeneralRe: Using all processors when compiling on a SMP machine Pin
Christian Graus28-Nov-02 0:51
protectorChristian Graus28-Nov-02 0:51 
Generalregsvr32 failed Pin
devvvy27-Nov-02 12:17
devvvy27-Nov-02 12:17 
GeneralRe: regsvr32 failed Pin
devvvy27-Nov-02 12:18
devvvy27-Nov-02 12:18 
General4 suspects? Pin
devvvy27-Nov-02 14:47
devvvy27-Nov-02 14:47 
GeneralRe: regsvr32 failed Pin
Peak27-Nov-02 20:21
Peak27-Nov-02 20:21 
GeneralRe: regsvr32 failed Pin
devvvy27-Nov-02 20:34
devvvy27-Nov-02 20:34 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.