EndDialog

This function destroys a modal dialog box, causing the system to end any processing for the dialog box.

BOOL EndDialog( 
  HWND hDlg, 
  int nResult
); 

Parameters

  • hDlg
    [in] Handle to the dialog box to be destroyed.
  • nResult
    [in] Specifies the value to be returned to the application from the function that created the dialog box.

Return Values

Nonzero indicates success. Zero indicates failure. To get extended error information, call GetLastError.

Remarks

Dialog boxes created by the DialogBox, DialogBoxParam, DialogBoxIndirect, and DialogBoxIndirectParam functions must be destroyed using the EndDialog function. An application calls EndDialog from within the dialog box procedure; the function must not be used for any other purpose.

A dialog box procedure can call EndDialog at any time, even during the processing of the WM_INITDIALOG message. If your application calls the function while WM_INITDIALOG is being processed, the dialog box is destroyed before it is shown and before the input focus is set.

EndDialog does not destroy the dialog box immediately. Instead, it sets a flag and allows the dialog box procedure to return control to the system. The system checks the flag before attempting to retrieve the next message from the application queue. If the flag is set, the system ends the message loop, destroys the dialog box, and uses the value in nResult as the return value from the function that created the dialog box.

Requirements

OS Versions: Windows CE 1.0 and later.
Header: Winuser.h.
Link Library: Dlgmgr.lib.

See Also

DialogBox | DialogBoxIndirect | DialogBoxIndirectParam | DialogBoxParam | EndDialog | WM_INITDIALOG | Dialog Boxes Functions

Last updated on Wednesday, April 13, 2005

© 2005 Microsoft Corporation. All rights reserved.