本ページは公開が終了した情報の複製であり、掲載時点での情報です。本ページに記載されている内容について各所に問い合わせることはご遠慮下さい。

[SDK16] ウィンドウのイメージをクリップボードへ転送する方法

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);

}

その他

(C)1994 Microsoft Corporation. All rights reserved.

マイクロソフト株式会社 テクニカル サポート


UP
UP
Home
HOMEPAGE
inserted by FC2 system