Q&A

  • FindWindow에서요...
윈도우핸들을 얻고 싶은데요

WinSight로 살펴보면 <-사용법은 잘 모르겠습니다.
<>Popup 000005D0 {TApplication} KeyEvent.exe {512.384}-{512.384} "KeyEvent" 의 경우
wH:=FindWindow('TApplication','KeyEvent'); 하면 찾아 지던데

<>Overlapped 0000056C {Afx:400000:b:13ae:6:37e7} MyProgram.exe ... 이렇게 나올땐
wH:=FindWindow('?','?'); 에서 어떻게 써야 하나요?

문제의 내용은 제프로그램에서 데이타를 받아
특정한 어플의 입력포커스에 받은 데이타를 삽입 하려구 하거든요
제가 2개의 샘플의 어플을 만들어 다른 어플로 보내 보니 되던데
정작 하고자하는 어플의 classname이 요상하게(?) 나와서 헤메구 있습니다.
3  COMMENTS
  • Profile
    노수경 2002.05.07 01:10
    정확하게 말하면
    아래의 독자적으로 실행되는 CUSTOMER란
    고객관리 프로그램을 띄워 놓고
    제프로그램에서 받은 데이타를 고객관리 프로그램의
    입력대기중인곳에 보낼려고 합니다.

    CUSTOMER.EXE 는 LOADER.EXE를 실행 해서 띄우게 되어 있구요
    WinSight로 살펴보면아래와 같이 나옵니다.
    <>Overlapped 00000964 {Afx:400000:b:13ae:6:37e7} CUSTOMER.EXECUSTOMER.EX (0,0)-(800.600) "Customer"
    ├<>Child 0000096c {#32770:Dialog} CUSTOMER.EXE?.? (0.0)-(764.552)
    │├<>Child 00000FA8 {#32770:Dialog} CUSTOMER.EXE?.? (0.60)-(799.599)
    ││├<>Child 00000FA4 {Edit} CUSTOMER.EXE?.? (101.39)-(196.59) <-이 곳에 입력
    ││├<>Child 00000FD4 {Edit} CUSTOMER.EXE?.? (311.39)-(404.59)
    :  :  :  :

    위의 경우
    입력 하고 싶은곳에 직접 넣을 수 있는 법과
    윈도우명(?)이 "CUSTOMER.EXECUSTOMER.EX"와 "CUSTOMER.EXE?.?"로 나오는데
    FindWindow()에서는 어떻게 써야 되지요

  • Profile
    티모니 2002.05.07 04:10
    자식 핸들을 가져올려고 할때는 Findwindow 로는 얻어 올수 없구요
    FindWindowEx를 써야 합니다.

    함수 원형은 아래와 같습니다.

    FindWindowEx(Parent:HWND, Child :HWND, ClassName : PChar, WindowName : PChar)

    그리고 보니깐 윈도우 캡션 보다는 클래스로 찾으시는것이 편할꺼 같네요

    그럼 이만. ㄴ(-_- )ㄱ~~~~

  • Profile
    노수경 2002.05.07 22:02
    답변 해 주셔서 감사 합니다.

    얻고자 하는 윈도우 핸들은 CUSTOMER.EXE의 핸들,
    또는 그 자식의 핸들 인데요
    클래스명이나 윈도우 명을 알아내야 되지요?
    WinSight로 보면 다음과 같이 나옵니다.
    ----
    <>Overlapped 00000964 {Afx:400000:b:13ae:6:37e7} CUSTOMER.EXECUSTOMER.EX (0,0)-(800.600) "Customer"
    ├<>Child 0000096c {#32770:Dialog} CUSTOMER.EXE?.? (0.0)-(764.552)
    │├<>Child 00000FA8 {#32770:Dialog} CUSTOMER.EXE?.? (0.60)-(799.599)
    ││├<>Child 00000FA4 {Edit} CUSTOMER.EXE?.? (101.39)-(196.59)
    ││├<>Child 00000FD4 {Edit} CUSTOMER.EXE?.? (311.39)-(404.59)
    :  :  :  :
    ----
    FindWindowEx를 쓰려면 부모 핸들을 알아야 하는데
    부모 핸들을 알기 위해 FindWindow를 써야 되지요?
    그런데 부모 핸들을 얻으려면 클래스명을 알아야 하는데
    어떻게 얻어야 하지요?
    또는 윈도우명을 위의 정보중 어느 부분 인가요?

    • 미소나눔
      2002.05.07 20:27
      Insert  한 후 레코드 포인터가 바로 그 값을 가지므로 Value := Query1.FieldByName('자동증가...
    • 이은경
      2002.05.08 22:43
              qryTrainee.ApplyUpdates;     ...
    • 김민
    • 2002.05.07 08:54
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 김형수
    • 2002.05.07 07:08
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 이병협
      2002.05.07 19:30
      for 문안에 inc(i)가 있군요. for 문은 자동으로 변수를 증가시키니 inc(i)가 빠져야 될것 같군요. 그리...
    • 미소나눔
      2002.05.07 07:27
        for i:=0 to stgrd1.rowcount-1 do begin         ...
    • 김형수
      2002.05.08 00:16
      ,
    • 엄주평
    • 2002.05.07 05:26
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김도형
      2002.05.07 07:12
      동적으로 생성을 하게되면... name을 주는건 잘못된 것이더라구여... 제가 해본 결과.... 이름을 주...
    • 돌쇠
      2002.05.07 18:55
      TList 를 이용한다는 의미를 모르겠어요 전 동적 이미지 생성시 다음과 같이 선언을 해서 사용했구요 M...
    • 강지훈
    • 2002.05.07 05:21
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김기수
      2002.05.07 09:33
      FindFirst 함수는 로컬파일에 사용되는 함수입니다. 님께서 원하는 작업은 아래분이 답변하셨던것처럼 작...
    • 강지훈
    • 2002.05.07 05:20
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 이정택
    • 2002.05.07 05:15
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 한대필
      2002.05.07 05:54
      TNMFTP를 사용하는 방법을 말씀드리자면 TNMFTP 의 UserID 와 Password 와 Host를 설정한뒤 Connect 해...
    • 이정은
    • 2002.05.07 05:02
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 김형수
    • 2002.05.07 04:40
    • 4 COMMENTS
    • /
    • 0 LIKES
    • ㉯㉰감자
      2002.05.07 08:47
      TDatabase로 연결 하셨다면 프로퍼티에 Login Prompt가 있습니다. 거기를 False로 잡으세요... 나머진 ...
    • 김형수
      2002.05.07 18:10
      제가 사용한것은 Tquery 와 Tdatasource 컴포넌트입니다. database 를 사용하지 않았는데, 안 되는 ...
    • 강형철
      2002.05.07 19:16
      TDatabase를 사용하지 않는다면 계속해서 나옵니다... BDE를 사용해서 DB를 연결할때는 TDatabase를 ...
    • 김형수
      2002.05.08 00:17
      감사합니다. ADO로 바꿨습니다.
    • 김도형
      2002.05.07 07:18
      제가 알기론..... 일반적으로....ActiveX Form으로 작성된 Form이 아니면... 변환 되지 않는거로 알...
    • 이호성
    • 2002.05.07 03:53
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김도형
      2002.05.07 03:55
      구냥 EXCEL 에서여??? 그거라면.... 블럭 지정해서... 오른쪽 클릭하면... 서식에서... 라인 &n...
    • 이호성
      2002.05.07 20:12
      그런게 아니고요 프로그램 상에서 물어본겁니다.. 제가 넘 간단하게 써서 잘못 이해하신것 같군요 제 실...
    • ㉯㉰감자
      2002.05.07 08:53
      어떤 잡업을 하다가 Lock이 걸렸는지 모르겠지만... 보통 Lock이 걸리는것은 Transaction을 잘못 했을때...
    • il212
    • 2002.05.07 03:44
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이성남
      2002.05.07 06:22
      DB 에서 해당 필드가 DATE형이 아닌 STRING형 인가 보네요. 굳이 Maskedit의 format형식을 '9999/...
    • 김도형
      2002.05.07 03:51
      copy 는 VB 에서 MID 즉... 잘라오는겁니다... head := Copy(str, 1, iPos); 는 STr 이라는 STring ...
    • 김기수
      2002.05.07 09:40
      움.. 저라면 두가지 방법을 쓸수 있겠습니다. 1. 텍스트 파일을 엑셀파일로 변환합니다. 엑셀에서 열기하...
    • 박상철
    • 2002.05.06 23:52
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김도형
      2002.05.07 00:06
      제가 알기론 Variants 는 델 6부터 나온 걸루 알구 있습니다.. 아마.. 델 5에서는 Variants 가 S...
    • 노수경
    • 2002.05.06 23:33
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 노수경
      2002.05.07 01:10
      정확하게 말하면 아래의 독자적으로 실행되는 CUSTOMER란 고객관리 프로그램을 띄워 놓고 제프로그램...
    • 티모니
      2002.05.07 04:10
      자식 핸들을 가져올려고 할때는 Findwindow 로는 얻어 올수 없구요 FindWindowEx를 써야 합니다. 함수 ...
    • 노수경
      2002.05.07 22:02
      답변 해 주셔서 감사 합니다. 얻고자 하는 윈도우 핸들은 CUSTOMER.EXE의 핸들, 또는 그 자식의 핸들 ...
    • 지니
    • 2002.05.06 22:32
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 이상협
    • 2002.05.06 21:43
    • 5 COMMENTS
    • /
    • 0 LIKES
    • yosule
      2002.05.06 22:14
    • 이상협
      2002.05.06 22:29
    • yosule
      2002.05.06 22:39
    • 이상협
      2002.05.06 23:00
    • yosule
      2002.05.06 23:17