PWJ1610 - 94/12 |
この資料は以下の製品について記述したものです。
この資料はウィンドウ・イメージをクリップボード転送する方法を紹介したものです。
SnapWindow() 関数(仮称)はパラメータにウィンドウ・ハンドルを渡す事により、そのウィンドウのイメージをクリップボードへ転送します。
GetActiveWindow() 関数からのリターン値を与えればアクティブなウィンドウを GetDesktopWindow() 関数からのリターン値を与えれば画面全体のイメージを転送します。
BOOL FAR PASCAL SnapWindow(HWND hWnd)
{
BOOL bResult = FALSE;
HDC hDC;
HDC hMemoryDC;
HBITMAP hBitmap;
RECT rc;
SIZE size;
hDC = GetWindowDC(hWnd);
hMemoryDC = CreateCompatibleDC(hDC);
GetWindowRect(hWnd, &rc);
size.cx = rc.right - rc.left;
size.cy = rc.bottom - rc.top;
if (hBitmap = CreateCompatibleBitmap(hDC, size.cx, size.cy)) {
SelectObject(hMemoryDC, hBitmap);
BitBlt(hMemoryDC, 0, 0, size.cx, size.cy, hDC, 0, 0, SRCCOPY);
OpenClipboard(hWnd);
EmptyClipboard();
SetClipboardData(CF_BITMAP, hBitmap);
CloseClipboard();
bResult = TRUE;
}
else
MessageBox(hWnd,
"クリップボードへの転送に失敗しました", "Error", MB_OK);
DeleteDC(hMemoryDC);
ReleaseDC(hWnd, hDC);
return (bResult);
}
マイクロソフト株式会社 テクニカル サポート
UP |
HOMEPAGE |