画面をキャプチャしたデータをクリップボードに格納せずにメモリに格納するには?


ぺんねーむ  2005-08-08 23:49:05  No: 58557  IP: 192.*.*.*

お世話になります。
VC6 MFCにてサーバーのキャプチャ画面をクライアントに
転送するツールを作ろうと思うのですが、
クリップボードを使用せずに画面のキャプチャデータを格納することは
できるのでしょうか?
宜しく御願い致します。

編集 削除
dairygoods  2005-08-09 09:14:16  No: 58558  IP: 192.*.*.*

システムキーフックを使って、Print Screen キーの押下を横取りし、
独自のキャプチャー機能を実装すれば可能だと思います。

編集 削除
memory leaks  2005-09-04 17:07:53  No: 58559  IP: 192.*.*.*

横レス失礼
その「独自のキャプチャー機能」ってのがキモなんじゃないかな!

Q.固ゆで卵を作りたいんですがどうすれば?
A.卵を固くゆでれば可能です。

みたいな!
でも俺も考えつかない。

編集 削除
とおりすがり  2005-09-04 21:23:05  No: 58560  IP: 192.*.*.*

質問者は、クリップボードを介さずにうまいことできる、あらかじめ用意された
「便利な方法」があることを期待してるんだと思いますよ。
だから、Q&Aのような状況ではなく、比較的適切な回答かと。

# ただしこの後、その実装を聞かれて、実装するだけのスキルがあるかどうか
# というところに辿りつきそうですが…

編集 削除
コーダー  2005-09-06 12:17:20  No: 58561  IP: 192.*.*.*

とりあえず、クリップボードを使わない場合、考えられる方式としては

画面のデバイスコンテキストを取得
デバイスコンテキストからDIBデータを作成
DIB内のRGBデータを転送

といった流れですかね。

http://www.sm.rim.or.jp/~shishido/wincap.html

ここにサンプルと解説が。

ただ、可能であればクリップボードに保存されたデータ(これもDIB
かな)を送る、という方法の方が楽かもしれませんが。

編集 削除