안녕하세요~~
c:cmsccc.exe 파일이 있는데 이 실행파일은
FTP로 text 파일을 서버로 올리는 프로그램입니다.
탐색기에서 ccc.exe 를 더블클릭하면 text 파일을 FTP 서버에
올립니다..
(실행되면 윈도우 작업줄에 나타났다가 ftp 서버로 text파일이 다 올라가면
윈도우 작업줄에서 자동 종료됨..)
이 실행 프로그램을 delphi로 호출하여 실행하려 하니 잘 안돼네요!!
처음에는 winexec 함수를 사용했는데 이함수는 프로그램을 호출은 했는데
text 파일이 올라 가지가 않더라구요..
그래서 고민 고민 하다가 아래 방법으로 시도했는데 역시 잘안돼네요
프로그램은 실행되었는데 역시 text 파일이 올라 가지 않습니다..
<>; 도와주세용..
//RunProcess :longint;
// 함수 호출
RunProcess := ExecNewProcess('c:cmsccc.exe');
if RunProcess <> 0 then
WaitForSingleObject(RunProcess,0);
===실행함수 ===
function TFMipgoinp.ExecNewProcess(ProgramName: String): Longint;
var
StartInfo : TStartupInfo;
ProcInfo : TProcessInformation;
CreateOK : Boolean;
begin
FillChar(StartInfo, SizeOf(TStartupInfo),#0);
FillChar(ProcInfo, SizeOf(TProcessInformation),#0);
StartInfo.cb := SizeOf(TStartupInfo);
if CreateProcess(PChar(ProgramName),nil, nil, nil,False,
CREATE_NEW_PROCESS_GROUP+NORMAL_PRIORITY_CLASS, nil, nil, StartInfo,
ProcInfo)
then
Result := ProcInfo.hProcess
else
Result := 0;
end;
즉 탐색기에서 더블클릭했을 때와 전용실행프로그램에서 ccc.exe를 실행했을 때 current directory가 다를 수도 있을 것 같습니다.
ccc.exe 프로그램에서 test file의 경로를 full path로 잡아 주는 것아 안전할 것 같은데요.
정확한 것은 아닙니다. 걍 추측이에여 ^^