The CDN_FILEOK notification message is sent by an Explorer-style Open or Save As common dialog box when the user specifies a filename and clicks the OK button. Your OFNHookProc hook procedure receives this message in the form of a WM_NOTIFY message.
CDN_FILEOK lpon = (LPOFNOTIFY) lParam;
The OFNOTIFY structure contains an NMHDR structure whose code member indicates the CDN_FILEOK notification code.
The OFNOTIFY structure also contains a pointer to an OPENFILENAME structure whose lpstrFile member specifies the address of the selected filename.
If the hook procedure returns zero, the dialog box accepts the specified filename and closes.
To reject the specified filename and force the dialog box to remain open, return a nonzero value from the hook procedure and call the SetWindowLong function to set a nonzero DWL_MSGRESULT value.
The system sends this notification only if the dialog box was created using the OFN_EXPLORER value.
GetOpenFileName, GetSaveFileName, NMHDR, OFNHookProc, OFNOTIFY, OPENFILENAME, SetWindowLong, WM_NOTIFY