말씀하신 문제는 현재 디렉토리의 문제인 것 같네요. 프로그램1에서 다른 프로그램2를 WinExec 등으로 실행하는 경우, 기본적으로 프로그램2의 현재 디렉토리는 프로그램1이 있는 디렉토리가 됩니다.
프로그램2를 실행시키기 직전에 SetCurrentDir() 함수로 현재 디렉토리를 프로그램2의 디렉토리로 잡아주시면 해결 되겠네요.
SetCurrentDir(ExtractFilePath(프로그램2경로));
WinExec('프로그램2경로', SW_SHOW);
그럼...
시겔 님이 쓰신 글 :
: 안녕하세요
:
: 실행 파일이 2개가 있습니다.
:
: 프로그램 1번(E:\)은
:
: WinExec(PChar('F:\txt.exe'),SW_SHOW);
:
: 이런 식으로 프로그램2번을 실행을 합니다.
:
: 그럼 프로그램 2번(F:\)
:
: 파라독스를 사용하는 프로그램 입니다.
:
: 질문 사항은
:
: 1번(E:\) 에서 2번(F:\)를 실행 할경우 DB 임시파일이 1번프로그램 드라이브에 생성이 되는 점입니다.
: 하지만
: 2번(F:\) 프로그램을 단독으로 실행할경우 DB 임시파일은 2번프로그램 드라이브에 생성이 됩니다.
:
: 델파이 끈은 짧지만 임시파일이 생성이 되는건 실행된 파일 드라이브 쪽으로 알고 있는되요
:
: 혹시
:
: DB 임시파일을 생성을 못하도록은 할수 있나요 아니면
: 단독으로 실행하듯 해당폴더에 임시파일이 생성 되도록 할수 있나요 ?
|