Q&A

  • ftp로 파일 전송후 로컬 파일 과 디렉토리 지우기?
        with NMFTP1 do
        begin
            Host     := _NTServerIP;
            TimeOut  :=  2000;
            UserID   := 'songwon';
            Password := 'songwon';
            try
                connect;
            except
                MessageDlg('서버접속에 실패하였습니다.',mtError,[mbYes],0);
            end;

            ChangeDir('down');

            for i := 0 to _FileList.Count -1 do
                begin

                Upload(_FileList.Strings[i],_FileList.Strings[i]);
                end;
            DisConnect;
        end;

        //3.전송한 파일삭제
       for i := 0 to _FileList.Count - 1 do
                Deletefile(_FileList.Strings[i]);
      //문제의 이부분 ㅠ.ㅠ
       if RemoveDir(dirpath2) then
              MessageDlg(dirpath2,mtError,[mbYes],0);

ftp로 파일을 전송후 로컬에 있는 파일과 디렉토리를 지우고 싶습니다.
_fileList(=tstringlist)에 파일들이 들어 있고 이부분은 문제없이 지워집니다.
헌데 해당 디렉토리를 지우는 부분이 안되는군요.
현재 사용중이라고 하는것 같은데 어떻게 하면 디렉토리까지 지워질까요?
1  COMMENTS
  • Profile
    이준희 2002.03.06 02:48
    FileList를 만들면서 FindClose를 안해주신 것 같군요...

    FindNext를 위해서 디렉토리를 꽉 잡고 있게 됩니다.

    FindClose로 풀어주신후 지우면 지워집니다.

    아래 참고 하세요

      dirpath := 'E:dir';
      fname := dirpath+'*';
      attr := faAnyFile;

      if FindFirst(fname,attr,rc) = 0 then
        repeat
          if rc.Attr <> faDirectory        then
            DeleteFile(dirpath+''+rc.Name);
        until FindNext(rc) <> 0 ;

        FindClose(rc);

        RemoveDir(dirpath);



    • 김강수
      2002.03.06 10:04
      수고하십니다. 저도 윈95때 부터 아래의 기능을 직접 만들어서 사용을 했는데 결론은 윈9X의 ExitWindows ...
    • 오진욱
      2002.03.06 22:04
      감사합니다. 님께서 해주신 답변을 보고..InitiateSystemShutdown 대신 ExitWindowsEx(EWX_POWEROFF,0); ...
    • 루단스
      2002.03.06 09:08
      예외사항.....? try except end; 이것을 말씀하시는건가요? try    ..    ...
    • 장명선
      2002.03.06 05:13
      이런건 팁쪽에 많이 있는데 함 찾아보는것두 좋을듯 하네요 DestroyWindow( ImmGetDefaultIMEWnd( Handl...
    • 김건림
    • 2002.03.06 03:41
    • 1 COMMENTS
    • /
    • 0 LIKES
    • cell
      2002.03.06 04:43
      이곳 예전 질/답란에 있을 꺼에요..... 저도 같은 경우를 당해서 예전에 질문을 했던 기억이 나네요 ...
    • 이은정
    • 2002.03.06 02:38
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 깨비
      2002.03.06 02:46
      Component를 조금 바꿔 보심이... 소스가 있으니.. 음.. 일단 inputbox라는 함수를 찾아보세요.. 소스...
    • 손창호
    • 2002.03.06 02:31
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김강수
      2002.03.06 10:08
      New Field를 하셔서 Field Type을 Calculated로 하셔서 테이블 오픈후 불러오는 이벤트 중 OnCalcFields에...
    • 타락천사
      2002.03.06 08:07
      안녕하세여.. 타락임다..^^ 이미지 전송수단으로 스트림을 쓰시려는 걸로 보이는군여..^^;; 제 경험...
    • 깨비
      2002.03.06 20:40
      타락님께서 직접 답변을 해주시다니.. 흑흑... 감사.. 버뜨. 전 아직 메모리라면.. 무뇌한이라서.. 메모...
    • 타락천사
      2002.03.07 08:33
      안녕하세여. 타락임다..^^;; 예전 기록보며 기억을 떠올려 해보려고 했는데, 안돼네여..ㅠㅠ 기냥 스...
    • 깨비
      2002.03.06 02:55
      procedure TForm1.Button2Click(Sender: TObject); var     jpeg1: TJpegimage; &n...
    • 이준희
      2002.03.06 02:21
      음.... jpeg 파일 포맷은 richedit로 볼 수 없습니다. jpeg파일 포맷은 이진데이터 파일로 되어 있...
    • 깨비
      2002.03.06 02:29
      볼 수 있어요..(프로그래머에게는 기본이죠.. 이진 파일 보는거... ) jpeg 가 데이터 이기 때문에.. 흐...
    • 이준희
      2002.03.06 03:00
      굳이 보시겠다면야... 그런데 리치에디트는 rtf 포맷이기 때문에 그냥 lines.add 해서는 볼 수 없구요 ...
    • 까몽
    • 2002.03.06 01:29
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이준희
      2002.03.06 02:48
      FileList를 만들면서 FindClose를 안해주신 것 같군요... FindNext를 위해서 디렉토리를 꽉 잡고 있게 ...
    • 깨비
      2002.03.06 02:23
      일단은..  Appliction.CreateForm 명령어로 해도 문제 없이 원하시는게 되리라 봅니다. 새로운 ...
    • 델.초
      2002.03.06 02:43
      안녕하세요..답변감사드립니다^^ 저기 제가 뛰운 소스가 procedure TForm1.HNewClick(Sender: TObject)...
    • 2002.03.06 02:59
      문제는 Application.CreateForm;의 특성에 있어요. Application.CreateForm;는 MainForm이 nil인 경우에 ...
    • 최경은
    • 2002.03.05 23:12
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 홍성락
      2002.03.05 23:35
      ///////////////////////////////////////////////////////// procedure TForm1.Button1Click(Sender:...
    • 장명선
      2002.03.05 23:17
      procedure TForm1.MaskEdit5Exit(Sender: TObject); begin MaskEdit5.Text := FormatDateTime('YYYY-MM-D...
    • 김명찬
    • 2002.03.05 22:51
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 장명선
      2002.03.05 23:15
      DBChart를 이용해보세여 훨씬 쉬어요... 그럼 즐코하세요
    • 김명찬
      2002.03.06 02:38
      님 답변 보고 잘 해결했습니다. 감사합니다. 오류는 아니지만 한가지 문제점이 있어 다시 질문을 합니다....
    • lazenca
    • 2002.03.05 22:50
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 홍성락
      2002.03.05 23:49
      /////////////////////////// DB오픈후에 아래처럼해보세요 TStringGrid(DBGrid1).ColWidths[3] := 1...
    • 장명선
      2002.03.05 23:12
      각셀의 크기 조절을 자동으로 해주는 것이 없는걸로 알고 있습니다. 입력값이 제일큰것으로 마추는 수밖에...
    • 정진훈
    • 2002.03.05 22:49
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 장명선
      2002.03.05 23:10
      메뉴에 보면 Component 에서 Install Component에서 등록하시면 됩니다. 그럼 즐코하세여
    • 정진훈
      2002.03.05 23:30
      좀구체적으로 그렇게 해보니 안돼어서그러는데 좀구체적으로 가르져주실수있겠습니까?
    • 김중인
      2002.03.05 23:50
      첫번째로, Package로 되어 있는 Component 인 경우. Component -> Install Packages... -> Add....
    • 송상우
    • 2002.03.05 22:49
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 장지용
      2002.03.05 22:54
      테이블에 있는 필드 크기를 변경하셨군요. 이럴땐 "DataSet" 의 해당 필드 "Size" ...
    • 장명선
      2002.03.05 23:14
      Application.CreateForm(TTestForm,TestForm); TestForm.Show; 이런씩으로 하면 되지 않을까여 ? 즐...
    • 윤정식
      2002.03.06 01:02
      아스키값으로 들어오더라도 숫자인 경우, Char형 숫자가 들어 올것입니다.. 아스키값은 모두 문자형이므로...
    • 장명선
      2002.03.05 23:21
      컴포넌트에 Read 이벤트가 있을겁니다. Read 이벤트가 발생할때 자료를 저장하면 될듯싶네요 그리고 포...
    • 이용수
      2002.03.09 02:33
      저두 허접입니다만 님의 글을 읽다가 혹 제가 알고 있는 부분이 도움이 될까하구여..! 제가 알기론 232통...