如果用户在窗口有或没有焦点时按下“打印屏幕”键,我希望应用程序收到通知。
您可能无法检测“打印屏幕”本身,但您可以监视剪贴板中位图数据的外观。
static UINT auPriorityList[] = { CF_BITMAP, CF_TEXT, CF_UNICODETEXT };
if (GetPriorityClipboardFormat(auPriorityList, 3) == CF_BITMAP)
{
if (OpenClipboard(hWnd))
{
hBM = (HBITMAP)GetClipboardData(CF_BITMAP);
...
EmptyClipboard();
CloseClipboard();
}
}