return;
}
调用“打印”对话框
}
LRESULT CALLBACK CMyHtmlView::CbtProc(int nCode, WPARAM wParam, LPARAM lParam)
{
switch (nCode)
{
case HCBT_CREATEWND:
{
HWND hWnd = (HWND)wParam;
LPCBT_CREATEWND pcbt = (LPCBT_CREATEWND)lParam;
LPCREATESTRUCT pcs = pcbt->lpcs;
if ((DWORD)pcs->lpszClass == 0x00008002)//#32770,“打印”对话框类名
{
if ( g_hWndDialog == 0 )
g_hWndDialog = hWnd; // 只保存一次保存“打印”窗口的句柄
}
break;
}
case HCBT_DESTROYWND:
{
HWND hwnd = (HWND)wParam;
if (hwnd == g_hWndDialog)
{
AfxGetMainWnd()->EnableWindow(TRUE);//恢复窗口状态
UnhookWindowsHookEx(g_hHook);//去除挂钩
}
break;
}
}
return CallNextHookEx(g_hHook, nCode, wParam, lParam);
}
很简单吧,更重要的是这种方法确实有效。
| 对此文章发表了评论 |

