안녕 하세요?
BacTeria 박종민 입니다.
오늘의 팁은 현재 떠있는 모든 윈도우의 핸들들을 얻어오는 방법에 대한 팁입니다.
바로 EnumWindows를 쓰는 방법인데요. (여기서 불려지는 함수를 CallBack 함수라고 부르죠~~)
한방에 모든 윈도우의 핸들을 다 얻어올 수 있습니다.
자세한건 직접 써보시면 걍~ 알게 됩니다.
예로 아래와 같이 쓰면 모든 Caption과 ClassName을 얻어올수 있겠네요.
그럼 오늘도 수고하세여~
PS. 팁 올리는게 점점 더 귀찮아지는군여...ㅋㅋ
여긴 넘 썰렁해~~
function EnumWindowsProc(hWnd: THandle; lParam: DWord): Boolean; stdcall;
var
pStr: pChar;
pCaption: pChar;
pClass: pChar;
begin
GetMem(pStr, 255);
GetMem(pCaption, 255);
GetMem(pClass, 255);
GetWindowText(hWnd, pCaption, 255);
GetClassName(hWnd, pClass, 255);
StrCopy(pStr, 'Caption: ');
StrCat(pStr, pCaption);
StrCat(pStr, ', Class: ');
StrCat(pStr, pClass);
Form1.ListBox1.Items.Add(pStr);
FreeMem(pStr, 255);
FreeMem(pCaption, 255);
FreeMem(pClass, 255);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
EnumWindows(@EnumWindowsProc, 0);
end;
|