Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Posle PostQuitMessage - proces ostaje u listi procesa?

[es] :: C programiranje :: Posle PostQuitMessage - proces ostaje u listi procesa?

[ Pregleda: 886 | Odgovora: 2 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

ljube
Ljubiša Knežević
Banjaluka

Član broj: 22429
Poruke: 135
*.dialup.blic.net



Profil

icon Posle PostQuitMessage - proces ostaje u listi procesa?22.08.2004. u 10:37

Zdravo,

Radim na aplikaciji pisanoj u C++ koja otvara vise thredova ali samo API bez upotrebe MFC-a.

Radio sam neke izmjene na programu (2 dana) i tek sada sam primjetio da kada kliknem na dugme za gasenje programa, oslobode se sve varijable, i posalje se PostQuitMessage(0) poruka ali program ostane u process listi - task manager-a.

Ovo se definitivno nije prije desavalo, vec su uzrok silne promjene koje sam radio zadnja dva dana. Pouksavam par sati da otkrijem sta je uzrok ovome, postavio sam bezbroj trace poruka, ali sve izgleda dobro ali proces opet ostaje u listi.

Da li neko moze da mi da neke smjernice gdje bih mogao da trazim uzrok ovog problema?

Pozdrav,
Ljubisa

22.08.2004. u 10:37 

blaza

Član broj: 961
Poruke: 739
*.vdial.verat.net



Profil

icon Re: Posle PostQuitMessage - proces ostaje u listi procesa?22.08.2004. u 10:52
Obrati paznju na message loop.
Nakon PostQuitMessage(0), salje se WM_QUIT. GetMessage() po prijemu WM_QUIT vraca 0, pa se na taj nacin izlazi iz while petlje u primeru dole.
Code:
while (GetMessage(&msg, NULL, 0, 0)) 
    {
        if (!TranslateAccelerator(msg.hwnd, hAccelTable, &msg)) 
        {
            TranslateMessage(&msg);
            DispatchMessage(&msg);
        }
    }

If you want to argue with me, learn to google faster.
22.08.2004. u 10:52 

ljube
Ljubiša Knežević
Banjaluka

Član broj: 22429
Poruke: 135
*.dialup.blic.net



Profil

icon Re: Posle PostQuitMessage - proces ostaje u listi procesa?22.08.2004. u 11:53
Mnogo Hvala!!!
Odmah sam nasao problem cim ste mi objasnili kako funkcionise PostQuitMessage(0)

Inace koristim ovu funkciju koja je slicna DoEvents u VB.

Code:

void DoEvents (void)
{
  MSG Msg;
  while (PeekMessage(&Msg,NULL,0,0,PM_REMOVE))
   {
     TranslateMessage(&Msg);
     DispatchMessage(&Msg);
   }
}


U jednoj funkciji koja se ucitava prije glavne petlje progama iz WinMain, pozivala se i DoEvents i to je na neki nacin pravilo pomenuti problem.

Pozdrav,
Ljubisa



22.08.2004. u 11:53 

[es] :: C programiranje :: Posle PostQuitMessage - proces ostaje u listi procesa?

[ Pregleda: 886 | Odgovora: 2 ]

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.