最近、いつ泣きましたか?

 APIの初歩的なことですみません
他のアプリケーションの hDC を取得して
GetPixel() API等 を使用したいのですが
どうもうまくいきません
hDC や hWnd あたりがよくわからないのが
原因だと思いますが、分かる方教えてください

 ソースは以下の様な感じです

Private Declare Function FindWindowA Lib "user32" (ByVal cnm As String, ByVal cap As String) As Long
Private Declare Function GetPixel Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long


lhWnd = FindWindowA(vbNullString, "ExpApp")
lColor = GetPixel(lhWnd, ix, iy)

A 回答 (2件)

試していませんが..



hDC = GetDC(lhWnd)
lColor = GetPixel(hDC, ix, iy)
Call ReleaseDC(hDC)
    • good
    • 0
この回答へのお礼

とても早い回答をいただきありがとうございます。
API使うのも何年ぶりで、GetDC API が、発見できませんでした。昔々使った覚えがありました。
教えていただいた内容で解決しました。
ありがとうございました

お礼日時:2002/08/27 15:09

既に#1の方の解答で可能かと思われるので


hDC や hWnd の説明だけ。

hDCとかhWndのhとはハンドルのことをさしています。ハンドルとは
銀行で渡される番号札みたいなもので、それを呼び出す際に必要になります。
hDCのDCはデバイスコンテキストの略でウインドウのグラフィックを管理しています。ペンの色とかフォントの情報などがはいっています。
Wndはウインドウの略で、hWndは実体をもつウインドウのウインドウハンドルです。
    • good
    • 0
この回答へのお礼

 そうなんです、hDCや、hWnd をしっかり理解していないので、よくわかんなくなっちゃうんですよね。
説明いただきましてありがとうございました。

お礼日時:2002/08/27 15:14

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!