본문 바로가기

프로그래밍/MFC , WinAPI

FindWindow 함수란 무엇인가?

HWND WINAPI FindWindow (
  _In_opt_ LPCTSTR lpClassName,
  _In_opt_ LPCTSTR lpWindowName
);


이 함수는 윈도우의 핸들을 얻어 오는 기능을 가지고 있습니다. 쉽게 말해서 지금 현재 컴퓨터에 켜져있는 다른 프로그램의 핸들도 가져올 수 있습니다. 이 함수는 2개의 파라메터가 있는데 선택적으로 사용이 가능합니다.  사용하고 싶지 않은 변수엔 NULL을 줍시다.  


lpClassName , lpWindowName 각각 뭘 넘겨줘야 하는가? 예를 들어보면


제가 메모장을 켰습니다. 메모장의 핸들을 얻고 싶으면


FindWindow ( "Notepad" , NULL ) ; 이런식으로 ..


제가 메모장을 2개를 더 켰다고 하고 메모장의 각각 제목이 1 , 2 ,3 입니다.


제가 메모장인데 제목이 3인 메모장을 찾고 싶다면


FindWindow ( "Notepad" , "3") ; 이런식으로 ..



ClassName 하고 WindowName 구분하는 법은 Spy++이란 프로그램을 이용하시면 바로 뜹니다!