C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[6740] Re:Re:내 프로그램에서 다른 실행파일 실행하기....
도난경보기 [] 2555 읽음    2001-04-11 14:16
태윤님 답변 감사합니다....
그런데 아래 소스만으로는 좀 부족한데요....
제 경우에 적용을 시켜보면 결국 notepad 가 자식이 되는데....
notepad 가 리턴하는 값은 뭐죠?
아래 예제는 폼에서 버튼 클릭했을때 메모장을 열어서 거기에
autoexec.bat 파일의 내용을 보여주는건데.....
메모장이 닫힐때까지 원래 프로그램은 기다리고 있구요....
메모장이 닫히면 원래 프로그램이 다시 나타나는데....
메모장이 리턴하는건 뭐죠?
그리고 메모장이 리턴하는 값을 받는 부분은 어디죠?
암만 찾아봐도 없는것 같은데요....
혹시 제 질문을 잘못 이해하신건 아닌지.....
아니면 빨리 답변해주시고 싶은 마음에 다른 부분을 빠뜨리신건지....
다시한번 정확한 답변 주시면 감사하겠습니다.

방태윤 님이 쓰신 글 :
: 완전한 답변은 아닙니다.
: 아래는 노트패드를 실행시키고 노트패드가 끝날때까지
: 대기하는 겁니다.
: 끝나야 리턴값을 받을수 있겠지요..참고만 하십시요.
:
: void __fastcall TForm1::Button1Click(TObject *Sender)
: {
:   STARTUPINFO         si;
:   PROCESS_INFORMATION pi;
:
:   ZeroMemory( &si, sizeof(STARTUPINFO) );
:   ZeroMemory( &pi, sizeof(PROCESS_INFORMATION) );
:
:   si.cb          = sizeof( STARTUPINFO );
:   si.dwFlags     = STARTF_USESHOWWINDOW;
:   si.wShowWindow = SW_SHOWNORMAL;
:
:   CreateProcess( NULL, "notepad c:\\autoexec.bat", NULL, NULL, FALSE,
:     0, NULL, NULL, &si, &pi );
:
:   WaitForInputIdle( GetCurrentProcess(), INFINITE );
:   if( pi.hProcess ){
:     DWORD dwExitCode = STILL_ACTIVE;
:     while ( dwExitCode == STILL_ACTIVE )
:     {
:       WaitForSingleObject( pi.hProcess, 1000 );
:       GetExitCodeProcess( pi.hProcess, &dwExitCode );
:       Update();
:     }
:   }
: }
: .끝.
:
: 도난경보기 님이 쓰신 글 :
: : 제목 그대로 입니다. 제가 만드는 프로그램에서 다른 실행 파일을 실행시키고 싶습니다.
: : 원래 프로그램을 부모, 불러와서 실행할 파일을 자식이라고 했을때,
: : 부모에서 자식을 호출합니다. 자식은 제대로 되면 1, 제대로 안되면 -1을 리턴합니다.
: : 부모는 자식이 어떤 값을 리턴하는지 받아서 1이 리턴되었으면 A 라는 일을 하고,
: : -1 이 리턴되었으면 B 라는 일을 하고 싶습니다.
: : 다른 프로그램을 실행시키기 위해, winexec 랑 shellexecute 를 사용해봤습니다.
: : 프로그램이 실행되기는 하지만 리턴값을 어떻게 받아야 할지 모르겠네요.
: : 위의 두가지의 경우에는 제대로 리턴값을 못받는 것 같더라구요.
: : 답변 부탁드립니다.
: :

+ -

관련 글 리스트
6726 내 프로그램에서 다른 실행파일 실행하기.... 도난경보기 2264 2001/04/10
6728     Re:내 프로그램에서 다른 실행파일 실행하기.... 방태윤 2804 2001/04/10
6740         Re:Re:내 프로그램에서 다른 실행파일 실행하기.... 도난경보기 2555 2001/04/11
6745             Re:Re:Re:내 프로그램에서 다른 실행파일 실행하기.... 방태윤 2884 2001/04/11
6804                 해결했습니다. 태윤님 감사... 도난경보기 2899 2001/04/13
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.