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
[22989] Re:[질문] Install wizard를 사용하여 Setup Program을 만들다보면 설치될 파일의 위치를...
Mr.Yoon [mryyd] 795 읽음    2002-12-04 07:57
Mr.Yoon 님이 쓰신 글 :
: 갑자기 의문이 생긴 점이 있어 이렇게 질문을 올립니다...
: Install wizard를 사용하여 Setup Program을 만들다보면
: 설치될 파일의 위치를 설정하는 곳이 있더라고요...
: 근데 그곳에 보면 ...\Program Files\ 나 \Program Files\Common Files\ 에
: 바로 설치가 될 수 있게 Path가 정의되어 있는데
: GetWindowsDirectory나 GetSystemDirectory와 같은 API 함수가 따로 있는지요...
: 만약 있다면 Vcl에도 존재할거 같은데 어떤 것들이 있는지 궁금합니다...^^
: 부탁드립니다...(__)

제가 올린 질문에 제가 답변을 쓰게 되는군요...^^;;;
근데 제가 찾은 아래의 해결방법도 정도(?)인지는 확실치 않습니다.
다만 찾다보니깐 방법이 2가지 정도 나오더라고요^^;;;
1. ExpandEnvironmentStrings함수를 사용하여 Program Files의 Dir Path를 찾는 방법...
   (단, 위에 함수를 이용해서는 하부의 Common Files Dir Path를 찾는데는 실패했습니다...ㅡㅡ)
   위의 함수의 첫번째 파라메타에 "%ProgramFiles%" 이렇게 하고 두번째 파라메타에 버퍼를 주시면
   현재 운용중인 OS의 Program Files Dir Path를 얻어오더라고요...^^
   ex) char *path;
       path = new char [MAX_PATH];
       ExpandEnvironmentStrings("%ProgramFiles%", path, MAX_PATH);
       printf("%s", path); // MessageBox(NULL, path, "Program FIles Dir Path", MB_OK);
       delete path;
       결과값출력 : "C:\Program Files"

2. 두번째 방법은 Registry의 정보를 읽어다가 사용하는 방법입니다...
   HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\ProgramFilesDir
   HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\CommonFilesDir
   위의 두정보를 읽어오면 각각의 Program FIles Dir Path와 그 하부의 Common Files Dir Path를
   구할 수 있더라고요^^;;;

위의 두방법 말고 더 정확하게 구할 수 있으면 가르쳐 주셨으면 합니다...^^;;;

그럼 즐프하세요~~~미수타윤이였습니다...(__)

+ -

관련 글 리스트
22973 [질문] Install wizard를 사용하여 Setup Program을 만들다보면 설치될 파일의 위치를... Mr.Yoon 600 2002/12/03
22989     Re:[질문] Install wizard를 사용하여 Setup Program을 만들다보면 설치될 파일의 위치를... Mr.Yoon 795 2002/12/04
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.