자동업데이트 프로그램인데요
그냥 아마생각안하고 폼에 indyd의 idftp컴퍼넌트랑 progressbar 딸랑 두개만 올려서
업데이트하는 걸 만들었습니다
서버에 특정 폴더에 파일이 있으면 다운받아 클라이언트의 특정폴더에
다운받아서 실행하도록 했는데요 다운도되고 실행도 되는데 아무래도
먼가 찜찜해서요...
이렇게해도 별 문제 없을까요? 여러사람이 동시에 다운합니다.
progressbar도 정상적으로 되는것 같은데...넘 빨리 지나가서..의심의심^^;;
마지막으로 만약 서버에 파일이 없다면 그냥 skip되도록 할려면 어떻게 해야 하나요?
부탁드려요..
var
Form1: TForm1;
TotalFSize : Integer;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
ftp.Host := '111.111.111.111';
ftp.Username := '2222';
ftp.Password := '3333';
ftp.Connect;
ftp.ChangeDir('/down');
ftp.Get('aaa.exe', 'c:\aaa\aaa.exe', True);
ftp.DisConnect;
WinExec('aaa.exe', SW_Show);
Form1.Close;
end;
procedure TForm1.ftpWork(Sender: TObject; AWorkMode: TWorkMode;
const AWorkCount: Integer);
begin
TotalFSize := AWorkCount;
ProgressBar1.Position := TotalFSize;
end;
end.
대부분 디렉토리 리스트를 갖다놓고 리스트를 불러온담에
파일을 비교해서 다운을 받지요..
다운받을 파일이 한개라면 머 상관없지만 여러개라면 루프를 돌려서 찾는게 낫겠쥐요.~
아....난 nmftp가 너무 싫어 ㅠㅠ
if ftp.size('aaa.exe') = -1 then
begin
Showmessage( '파일없음' );
Exit;
end;