|
안녕하세요? 개박살입니다.
지금 상황은
: DataModule2->Master->Delete();
: DataModule2->Detail->Delete();
:
: Path = "c:\\Temp\\"+ DataModule2->Master->FieldByName("Id")->AsString;
첨에 먼저, 데이타 베이스에서 자료를 삭제하시고, 파일을 지우셨더군요 ^^;
이렇게 되면 다음에 파일을 지울때 데이타베이스에서 파일이름을 못얻어와서 생기는 문제가 아닌가 합니다.
파일이름을 AnsiString 형 Temp변수에 저장해놓고 데이타베이스에서 삭제하시고
그다음 Temp변수의 이름을 가지고 삭제해보시면 될껍니다.
그럼 참고하세요~
김용준 님이 쓰신 글 :
: 먼저 답변 감사드립니다..
: 제가 temp 폴더를 만들지 않아서 생긴 에러더군요...
:
: 그런데 이번에는 삭제하는데 문제가 생겼어요.....
:
: d __fastcall TFrm_Main::Mnu_DeleteCardClick(TObject *Sender)
: {
: if(DataModule2->Query1->FieldByName("Id")->AsString == "") return;
:
: if(MessageDlg("확실합니까?", mtConfirmation, TMsgDlgButtons()<<mbOK<<mbCancel, 0) == mrOk) {
: DataModule2->Master->Open();
: DataModule2->Detail->Open();
: DataModule2->Master->Delete();
: DataModule2->Detail->Delete();
:
: Path = "c:\\Temp\\"+ DataModule2->Master->FieldByName("Id")->AsString;
: DeleteFile(Path);
:
: DataModule2->Query1->Close();
: DataModule2->Query1->Open();
:
: DataModule2->Master->Close();
: DataModule2->Detail->Close();
: }
:
: 이렇게해서 만들어진 파일을 지우려고 하는데 (이것도 책에나온 예제입니다) 안지워 지는군요..
: 하~~~~.. 왜 또 안되는지...
:
: 또다시 답변 부탁 드립니다...
|