C# 윈도우핸들 얻기 FindWindow
.NET/WinAPI 2013. 12. 20. 23:05
내가 만든 프로그램으로 다른 윈도우(프로그램)를 제어하고자 할때
반드시 필요한 함수, FindWindow 입니다.
내가 제어하고 싶은 윈도우를 지지고 볶고 하게 해줄 거의 모든 함수들이 해당 윈도우의 핸들을 인자로 요구합니다.
FindWindow는 바로 그 핸들을 만들어줍니다.
[DllImport("user32.dll")] public static extern int FindWindow(string lpClassName, string lpWindowName);
이렇게 선언해주고
첫번째 인자는 해당 윈도우의 클래스명인데 null로 생략 가능합니다.
두번재 인자 lpWindowName에 해당 윈도우의 Title을 문자열 그대로 넘겨줍니다.
창 제목이 LOL이라면
int hWnd = FindWindow(null, "LOL");
hwnd에 LOL이라는 윈도우의 핸들을 담았습니다.
이 핸들을 LOL윈도우의 각종 정보를 얻거나 제어할 수 있는 함수들의 인자로 던져주면 됩니다.
대략의 흐름은
핸들을 얻는다 -> 핸들로 정보를 가져온다 -> 제어한다
에서 핸들을 얻는다 부분입니다.
'.NET > WinAPI' 카테고리의 다른 글
C# 키보드이벤트 (0) | 2014.01.19 |
---|---|
C# 마우스이벤트 (0) | 2014.01.18 |
C# 윈도우 위치,크기 정보얻기 GetWindowPlacement (0) | 2014.01.06 |
C# 핫키 설정 RegisterHotKey (0) | 2013.12.28 |
C#에 Windows API 사용하기 (0) | 2013.12.19 |