### 函数功能

该函数对任何多文档接口（MDI）框架窗日的窗口过程不处理的窗口消息提供缺省处理。窗口过程不能明确处理的所有窗口消息必须通过DefFrameProc函数处理，而不是通过DefWindowProc函数。

### 函数原型

LRESULT DefFrameProc（HWND hWnd，HWND hWnd，HWND hWndMDIClient，UINT uMsg，WPARAM wParam，LPARAM IParam）；

### 参数

hWnd：MDI框架窗口句柄。
hWndMDIClient：MDI客户窗口句柄。
uMsg：指定要处理的消息。
wParam：指定附加的特定消息信息。
IParam：指定附加的特定消息信息。

### 返回值

返回值指定，消息处理的结果其值与处理的消息有关。如果hWndMDIClient参数为NULL，返回值与DefWindowProc函数的相同。
备注：当应用程序的窗口过程不能处理一个消息时，它把消息传递给DefWindowProc函数来处理。MDI应用程序使用DefFrameProc和DefMDIChildProc函数代替DefWindowProc函数提供缺省消息处理。应用程序传递给DefMDIChildProc函数的所有消息（例如非客户消息和WM_SETTEXT消息）通常应被传递给DefFrameFro函数。DefFramePro函数也处理下列消息：
WM_COMMAND：激活用户选择的MDI子窗口。当用户从MDI框架窗口的菜单中选择MDI子窗口时，此消息被发送伴随该消息的窗口标识符识别被激活的MDI子窗口。
WM_MENUCHAR：当用户按下Alt＋C（减）组合键时，打开活动MDI子窗口的窗口菜单。
WM_SETFOCUS：传递键盘响应给MDI客户窗口，客户窗口又依次地把它传递给活动的MDI子窗口。
WM_SIZE：重新设备新的框架窗口客户域的MDI客户窗口大小。如果框架窗口过程设置了不同大小的MDI客户窗口，消息将不传递给DefWindowProc函数。

### 速查

Windows NT：3.1及以上版本；Windows：95及以上版本；Windows CE：不支持；头文件；winuser.h；输入库：user32。lib；Unicode：在Windows NT环境中以Unicode和ANSI方式实现。