Q&A

  • 다른 프로그램을 실행시키고 캡션을 바꿀 수 있나요 ?
다른 프로그램을 실행시키고 캡션을 바꾸려고합니다.



델파이를 배운지가 얼마 안되어 도무지 감이 오질 않네요.



고수님들 꼬~옥 부탁드립니다

2  COMMENTS
  • Profile
    홍성락 2001.09.10 22:28
    민광호 wrote:

    > 다른 프로그램을 실행시키고 캡션을 바꾸려고합니다.

    >

    > 델파이를 배운지가 얼마 안되어 도무지 감이 오질 않네요.

    >

    > 고수님들 꼬~옥 부탁드립니다

    /////////////////////////////////////////////////////

    다른 방법도 많은데요, 한가지 예를 들겠습니다.



    다른프로그램실행은

    ShellExecute(Handle, 'open', PChar(file_name), nil, nil, SW_SHOWNORMAL);

    또는 WinExec('.Target.exe', SW_SHOW);로 하셨겠죠.



    그후 그프로그램을 찾으려면

    TargetProgram := FindWindow('실행크래스명', '실행한프로그램');

    TargetProgram변수는 HWND형이구요, FindWindow나 FindWindowEx로 그프로그램 핸들을 얻어오면됩니다. 예로는 FindWindow(nil, '실행한프로그램해당폼명');



    그리고 캡션바꾸려면 해당 프로그램의 컴포넌트에 메세지를 보내는 함수와 같이 사용하시면 되는데요, 다른것은 TargetProgram를 구할때 해당폼핸들이면되는것입니다.

    SendMessage(TargetProgram, WM_SETTEXT, 0, LParam(Pchar('연습')));



  • Profile
    칼리 2001.09.10 22:06
    델파이 MAIN 프로그램에서 SUB Form을 띄우시는건지

    아니면 다른프로그램(엑셀이나 한글 등)을 호출하시는건지요.



    후자는 잘 모르겠고

    전자라면 SUB Form의 OnCreat 이벤트에다

    Self.Caption := '가나다' ;

    또는

    폼이름.Caption := '가나다' ;

    이런식으로 주세요.





    민광호 wrote:

    > 다른 프로그램을 실행시키고 캡션을 바꾸려고합니다.

    >

    > 델파이를 배운지가 얼마 안되어 도무지 감이 오질 않네요.

    >

    > 고수님들 꼬~옥 부탁드립니다