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
[4694] Re:[질문] 다른 응용 프로그램을 실행 시키려할때....
임승균.조로 [zoro] 3451 읽음    2000-12-28 00:00
안녕하세요

ShellExecuteEx함수를 사용하셔서
SHELLEXECUTEINFO의 구조체멤버중에 lpParameters에 여시고 싶은
파일 패스를 적어주시면 되겠죠..
아래 소스 드립니다.

void __fastcall doExecuteFile(AnsiString fn)
{
  SHELLEXECUTEINFO execinfo;
  memset(&execinfo, 0, sizeof(execinfo));
  execinfo.cbSize = sizeof(execinfo);
  execinfo.lpVerb = "open";
  execinfo.lpFile = fn.c_str();   // 실행하시려는 프로그램의 파일 path
  execinfo.lpParameters = "c:\\book1.xls";  // 여시려는 파일 path
  execinfo.fMask = SEE_MASK_NOCLOSEPROCESS;
  execinfo.nShow = SW_SHOWDEFAULT;
  ShellExecuteEx(&execinfo);
}

void __fastcall TForm1::Button2Click(TObject *Sender)
{
  doExecuteFile("Excel");  //저는 Excel이 패스가 잡혀있어 그냥 이렇게 써도 되네요.
}
//---------------------------------------------------------------------------

그럼 즐거운 하루 되십시요..


무정 님이 쓰신 글 :
: builder에서 만든 프로그램에서 어떤 버튼을 누르면 다른 응용프로그램이 실행이 되게 하려는 데요.. 그냥 응용프로그램만 실행시키는 것이 아니고 그 프로그램에서 사용하는 파일을 읽어오게 하려고 합니다.
:
: 예를 들면 제가 만든 프로그램에서 어떤 버튼을 클릭시 MS-Word가 실행이 되면서 지정된 *.doc가 뜨게 하려는 것입니다.
:
: 그냥 MS-Word만 실행시키려는 것은 아래 방법을 사용하면 되었거든요.
: WinExec("MS-Word가 있는 경로", SW_SHOW);
:

+ -

관련 글 리스트
4689 [질문] 다른 응용 프로그램을 실행 시키려할때.... 무정 2944 2000/12/28
4695     Re:[질문] 다른 응용 프로그램을 실행 시키려할때.... 한꼬맹이 3227 2000/12/28
4694     Re:[질문] 다른 응용 프로그램을 실행 시키려할때.... 임승균.조로 3451 2000/12/28
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.