Q&A

  • 내 폼안에 외부 프로그램 실행
외부 프로그램을 내 폼안에 실행할려고 합니다.



여러분의 도움으로 아래까지 왔습니다.

`````` ````

먼저 감사하구요.



그런데, 메모장은 아래같이 사용하면 잘되는데...

`````` ```` ``

왜 워드패드는 안돼는지... 궁금하네요.

```````` ````



procedure TVIEW_F.Button1Click(Sender: TObject);

wnd: HWND;

begin

WinExec('write', sw_hide); <==== sw_Show 하면 외부로 실행됩니다.

wnd := FindWindow('write', nil ); 하지만 sw_Hide하면 보이지는 안고

windows.SetParent( wnd, Handle); 메모리에 남아있습니다.

SetWindowPos( wnd,0, 0, 0, clientwidth, clientheight,

SWP_NOZORDER or SWP_SHOWWINDOW);

end;

2  COMMENTS
  • Profile
    아이언 2000.11.19 00:07
    WinExec('C:Program FilesAccessoriesWORDPAD.EXE', sw_hide);

    wnd := FindWindow('WordPadClass', nil );



    글구.. Findwindow나 뭐. WinExec

    이런 단어로 검색 해 보세요...자세한 설명이 있을 겁니다.



    노트패드처럼. 'write'함수는 잘 모르겠구요..











    코스모스 wrote:

    > 외부 프로그램을 내 폼안에 실행할려고 합니다.

    >

    > 여러분의 도움으로 아래까지 왔습니다.

    > `````` ````

    > 먼저 감사하구요.

    >

    > 그런데, 메모장은 아래같이 사용하면 잘되는데...

    > `````` ```` ``

    > 왜 워드패드는 안돼는지... 궁금하네요.

    > ```````` ````

    >

    > procedure TVIEW_F.Button1Click(Sender: TObject);

    > wnd: HWND;

    > begin

    > WinExec('write', sw_hide); <==== sw_Show 하면 외부로 실행됩니다.

    > wnd := FindWindow('write', nil ); 하지만 sw_Hide하면 보이지는 안고

    > windows.SetParent( wnd, Handle); 메모리에 남아있습니다.

    > SetWindowPos( wnd,0, 0, 0, clientwidth, clientheight,

    > SWP_NOZORDER or SWP_SHOWWINDOW);

    > end;

  • Profile
    코스모스 2000.11.19 00:17


    오~ 된다~



    정말 감사 합니다.



    지속적으로 확인 해보니까 10시간 만에 답변이 왔네요



    아이언 님 정말 감사합니다.



    그리구 모두에게도...



    아이언 wrote:

    > WinExec('C:Program FilesAccessoriesWORDPAD.EXE', sw_hide);

    > wnd := FindWindow('WordPadClass', nil );

    >

    > 글구.. Findwindow나 뭐. WinExec

    > 이런 단어로 검색 해 보세요...자세한 설명이 있을 겁니다.

    >

    > 노트패드처럼. 'write'함수는 잘 모르겠구요..

    >

    >

    >

    >

    >

    > 코스모스 wrote:

    > > 외부 프로그램을 내 폼안에 실행할려고 합니다.

    > >

    > > 여러분의 도움으로 아래까지 왔습니다.

    > > `````` ````

    > > 먼저 감사하구요.

    > >

    > > 그런데, 메모장은 아래같이 사용하면 잘되는데...

    > > `````` ```` ``

    > > 왜 워드패드는 안돼는지... 궁금하네요.

    > > ```````` ````

    > >

    > > procedure TVIEW_F.Button1Click(Sender: TObject);

    > > wnd: HWND;

    > > begin

    > > WinExec('write', sw_hide); <==== sw_Show 하면 외부로 실행됩니다.

    > > wnd := FindWindow('write', nil ); 하지만 sw_Hide하면 보이지는 안고

    > > windows.SetParent( wnd, Handle); 메모리에 남아있습니다.

    > > SetWindowPos( wnd,0, 0, 0, clientwidth, clientheight,

    > > SWP_NOZORDER or SWP_SHOWWINDOW);

    > > end;