windows - På baggrund af en wparam, hvordan kan jeg afgøre, om det er kommandoen File- > Exit i en MFC-app?

Indlæg af Hanne Mølgaard Plasc

Problem



Er der en defineret konstant et sted i MFC, som er standarddefinitionen for menuen File-> Exit menu? Jeg forsøger at afgøre, om en kommando er den ene, men jeg har kun en WPARAM til at arbejde med.

Bedste reference


APP\_EXIT (57665 eller 0xE141) sendes på kommando til meddelelseskortet angivet i appcore.cpp (eller hvis du tilsidesætter det i din CWinApp-afledte klasse);


BEGIN\_MESSAGE\_MAP(CWinApp, CCmdTarget)
  ON\_COMMAND(ID\_APP\_EXIT, &CWinApp::OnAppExit)
END\_MESSAGE\_MAP()


Til gengæld sender OnAppExit en WM\_CLOSE besked til hovedvinduet i CWinApp:


void CWinApp::OnAppExit()
{
  // same as double-clicking on main window close box
  ASSERT(m\_pMainWnd != NULL);
  m\_pMainWnd->SendMessage(WM\_CLOSE);
}


Sådan er din ansøgning ender i MFC, ingen WM\_QUIT.