|
Help가 Full 설치를 하지 않으시면 API Help가 나오지 않는 것으로 알고 있습니다.
(혹은 델파이 설치나 ^^)
온라인 Help가 되어드리자면.. -_-;;
HWND hdHandle = FindWindow([char* Param1], [char* Param2]);
이런 형식으로 사용할 수 있는데요, [Param1], [Param2] 중에 선택하여 사용하실 수 있습니다.
[Param1]은 클래스 이름이 되겠고요, [Param2]는 Caption이름이 됩니다.
Param1 이 "TForm" 을 입력하시면, TForm이라는 클래스 이름을 가지고 있는
핸들을 리턴합니다. (이 클래스 이름은 Winsight 나 Spy++로 찾아내실 수 있습니다)
Param2은 캡션입니다. 윈도우 상단 파란 줄에 나와있는 캡션,
"Form1" 이런식으로 찾으시면, 파란 줄에 Form1이라는 글자가 나온 윈도우를
찾아냅니다. 역시 이것도 Winsight 나 Spy++로.. :)
FindWindowEx 라는 명령도 있는데요, 이 것은 좀 더 세부적으로 검색을 하는 API로
인자가 4개를 가지고 있습니다.
HWND hdHandle = FindWindowEx([HWND Parent], [HWND Next], [char* Param1], [char* Param2]);
[Param1] 과 [Param2]는 똑같지만, [Parent]는 그 해당 부모 윈도우부터 찾아내는
것이고, [Next]는 똑같은 이름이 두개를 가지고 있을 때, 예를들어, TEdit라는 클래스가
두개면, 첫번째가 리턴된 후 비교해서 아니면, 첫번째 Edit 핸들을 Next에 넣어
이 첫번째 이후로부터 검색하게 할 수 있습니다.
예를들어, 이렇게 하시면 TForm1 클래스인 윈도우를 찾아냅니다.
HWND hdHandle = FindWindowEx(NULL, NULL, "TForm1", NULL);
여기서 hdHandle이 맞는지 비교를 하시고, 이 윈도우가 아니라
다른 TForm1을 가지고 있는 윈도우를 찾고자 하시면,
HWND hdHandleSecond = FindWindowEx(NULL, hdHandle, "TForm1", NULL);
이렇게 하시면, 위에 찾아낸 윈도우가 아닌 다음 TForm1 클래스를 찾아냅니다.
cuperido
컴초보117 님이 쓰신 글 :
: 유영인 Cuperido 님, 친절한 답변에 감사드립니다.
:
: C Builder 5.0 의 Help에는 FindWindow명령이 없는것 같네요.
:
: 어떻게 다른 대용되는 명령은 없는지요?
:
: 미안해요!!!
:
:
: 유영인 Cuperido 님이 쓰신 글 :
: : 메시지를 보내는 방법도 있겠지만,
: :
: : 간단하게 API를 이용하여 하는 방법도 있습니다.
: :
: : // 커서 100x100 으로 이동
: : SetCursorPos(100, 100);
: :
: : // 왼쪽 마우스 클릭.
: : mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0);
: : mouse_event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0);
: :
: : 메시지를 이용하실 경우에는, Winsight나 Spy++ 등을 이용해서 해당 메시지를
: : 알아낸 뒤, 그 메시지를 SendMessage 로 그 어플리케이션 핸들 (FindWindow로 찾아서)
: : 로 보낼 수 있습니다.
: :
: :
: : cuperido
: :
: : 컴초보117 님이 쓰신 글 :
: : : 안녕하세요?
: : :
: : : 매일 계시판에 와서 고수님들의 글을 보고 이제는 제법 코딩도 할줄 알게 되였습니다.
: : :
: : : 오늘 처음 질문을 올리니 고수님들께서 관심을 가지고 봐주세여.
: : :
: : : 현재 제 컴에서 한창 실행중에 있는 임이의 애플리캐션에 강제적으로 여러가지 마우스이벤트처리를 주어 그 애플리케션을 조종해보려고 합니다.
: : :
: : : 제가 넘 초보라 어떻게 시작했으면 좋을지 방도부터 대주세여.
: : :
: : : 고수님들의 방조를 바랍니다.
: : :
: : : 저는 씨 빌더 5.0을 사용하고있습니다.
: : :
: : : 좋은 하루 되세여.
|