안녕하세요~!^^
델파이 Tnmftp component를 이용해 웹상에 자료를 올리려구 하는데요!
디렉토리 만들구 그 안에 파일 업로드 하는 식으로여!
디렉토리 생성이나 파일 업로드는 Tnmftp에 있는
MakeDirectory, UploadAppend프로시져 사용해서 돼거든여!
그런데 웹상에 기존에 만들어둔 디렉토리가 있는지 없는지 알수 있는
프로시져나 프로퍼티...가튼게 help파일에는 없는것 같아서여(못 찾았나^^?)
궁여지책으로 event에 있는 OnFailure, OnSuccess 이용해 봤는데여
OnFailure는 NMFTP1.ChangeDir(...)에서 ...부분의 이름을 가진 디렉토리가
웹상에 없다는 에러메세지가 뜨고나서 확인 누루고 나서 ...디렉토리가 만들어
지구여 OnSuccess는 디렉토리가 carPicture2002072955 이런식으로 만들
어 지기는 하는데요. 나중에 수정됀 자료를 업로드 하려면 디렉토리를 다시 만
들더라구여...ㅠ.ㅜ...이상태서 진전이 없네영....이공
긴글 읽어 주시느라 수고하셨구여
요약하자면
1> 웹상에 디렉토리가 있는지 없는지 알아볼 수 있는 프로시져나 프로퍼티가 있는지 궁금하구여
2> 없다면 OnFailure이벤트에서 에러가 안나게하는 방법.
3> 기타 다른 방법으로(예-다른 프로시져나 함수 사용) 해결할 수 있는 법을
알수 있을까 해서 질문 드립니다...^^...
고수님들의 빠른 답변 부탁드릴께여!!!!
참고로 아래에 테스트 하던 소스두 좀 봐주세여!!!
.
.
.
var
Form1: TForm1;
strChDir : string;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
begin
if NMFTP1.Connected then
NMFTP1.Disconnect
else begin
{ NMFTP1.Vendor := NMOS_AUTO;
NMFTP1.Host := strFtpAdd;
NMFTP1.UserID := strFtpID;
NMFTP1.Password := strFtpPW;}
NMFTP1.Connect;
end;
//ftp Host상에 CarPicture라는 디렉토리 생성
strChDir := 'CarPicture';
NMFTP1.ChangeDir(strChDir);
//strChDir := '날짜';
NMFTP1.ChangeDir(strChDir);
//strChDir := '조';
NMFTP1.ChangeDir(strChDir);
end;
procedure TForm1.NMFTP1Failure(var Handled: Boolean; Trans_Type: TCmdType);
begin
case Trans_Type of
cmdChangeDir:
begin
NMFTP1.MakeDirectory(strChDir);
NMFTP1.ChangeDir(strChDir);
end;
end;
end;
procedure TForm1.NMFTP1Success(Trans_Type: TCmdType);
begin
case Trans_Type of
cmdChangeDir:
begin
if strChDir = 'CarPicture' then begin
strChDir := '20020729';
NMFTP1.MakeDirectory(strChDir);
end
else begin
strChDir := '55';
NMFTP1.MakeDirectory(strChDir);
end
end;
end;
end;
end.