Q&A

  • 한 디렉토리의 파일과 부 디렉토리 몽땅날리기???
질문 그대로 입니다.



어느 한 디렉토리의 자료를 디렉토리와 파일에 상관없이 깨끗하게 지워지는 수는

없을까요:???



부탁 드립니다.

3  COMMENTS
  • Profile
    난나야! 2001.03.08 02:53
    한대필 wrote:

    > 질문 그대로 입니다.

    >

    > 어느 한 디렉토리의 자료를 디렉토리와 파일에 상관없이 깨끗하게 지워지는 수는

    > 없을까요:???

    >

    > 부탁 드립니다.



    담과 같이 함 해보세여~~~

    procedure TForm1.Button1Click(Sender: TObject);

    var

    DirInfo: TSearchRec;

    r : Integer;

    begin

    r := FindFirst('C:Test*.*', FaAnyfile, DirInfo);

    While r = 0 do

    begin

    if ((DirInfo.Attr and FaDirectory <> FaDirectory) and

    (DirInfo.Attr and FaVolumeId <> FaVolumeID))

    then

    if DeleteFile(pChar('C:Test' + DirInfo.Name)) = false then

    ShowMessage('삭제할 수 없는 파일 : C:Test' + DirInfo.Name);

    r := FindNext(DirInfo);

    end;

    SysUtils.FindClose(DirInfo); // FindFirst에 의해 사용된 메모리를 해제

    if RemoveDirectory('C:Test') = false then

    ShowMessage('삭제할 수 없는 디렉토리 : C:Test');

    end;

  • Profile
    한대필 2001.03.08 03:26
    답변 정말로 감사합니다....



    답변의 내용중엔 DeleteFile 가 들어있던데..

    그것으로는 디렉토리까지 지워지지 않더군요..



    그러니깐 a: 의 루트에서 모든 것을 지우려고 하는 것입니다.



    다시 한번 부탁 드립니다.





    난나야! wrote:

    > 한대필 wrote:

    > > 질문 그대로 입니다.

    > >

    > > 어느 한 디렉토리의 자료를 디렉토리와 파일에 상관없이 깨끗하게 지워지는 수는

    > > 없을까요:???

    > >

    > > 부탁 드립니다.

    >

    > 담과 같이 함 해보세여~~~

    > procedure TForm1.Button1Click(Sender: TObject);

    > var

    > DirInfo: TSearchRec;

    > r : Integer;

    > begin

    > r := FindFirst('C:Test*.*', FaAnyfile, DirInfo);

    > While r = 0 do

    > begin

    > if ((DirInfo.Attr and FaDirectory <> FaDirectory) and

    > (DirInfo.Attr and FaVolumeId <> FaVolumeID))

    > then

    > if DeleteFile(pChar('C:Test' + DirInfo.Name)) = false then

    > ShowMessage('삭제할 수 없는 파일 : C:Test' + DirInfo.Name);

    > r := FindNext(DirInfo);

    > end;

    > SysUtils.FindClose(DirInfo); // FindFirst에 의해 사용된 메모리를 해제

    > if RemoveDirectory('C:Test') = false then

    > ShowMessage('삭제할 수 없는 디렉토리 : C:Test');

    > end;

  • Profile
    최용일 2001.03.08 05:44
    안녕하세요. 최용일입니다.



    델파이 팁모아에서 찾아보시면 강민주님의 팁이 있습니다. 항상 먼저 검색해보세요...



    ^^ 항상 즐코하세요.



    한대필 wrote:

    > 답변 정말로 감사합니다....

    >

    > 답변의 내용중엔 DeleteFile 가 들어있던데..

    > 그것으로는 디렉토리까지 지워지지 않더군요..

    >

    > 그러니깐 a: 의 루트에서 모든 것을 지우려고 하는 것입니다.

    >

    > 다시 한번 부탁 드립니다.

    >

    >

    > 난나야! wrote:

    > > 한대필 wrote:

    > > > 질문 그대로 입니다.

    > > >

    > > > 어느 한 디렉토리의 자료를 디렉토리와 파일에 상관없이 깨끗하게 지워지는 수는

    > > > 없을까요:???

    > > >

    > > > 부탁 드립니다.

    > >

    > > 담과 같이 함 해보세여~~~

    > > procedure TForm1.Button1Click(Sender: TObject);

    > > var

    > > DirInfo: TSearchRec;

    > > r : Integer;

    > > begin

    > > r := FindFirst('C:Test*.*', FaAnyfile, DirInfo);

    > > While r = 0 do

    > > begin

    > > if ((DirInfo.Attr and FaDirectory <> FaDirectory) and

    > > (DirInfo.Attr and FaVolumeId <> FaVolumeID))

    > > then

    > > if DeleteFile(pChar('C:Test' + DirInfo.Name)) = false then

    > > ShowMessage('삭제할 수 없는 파일 : C:Test' + DirInfo.Name);

    > > r := FindNext(DirInfo);

    > > end;

    > > SysUtils.FindClose(DirInfo); // FindFirst에 의해 사용된 메모리를 해제

    > > if RemoveDirectory('C:Test') = false then

    > > ShowMessage('삭제할 수 없는 디렉토리 : C:Test');

    > > end;