Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];

Вниз

ShellApi - удаление всех файлов из каталога   Найти похожие ветки 

 
iVovs ©   (2004-04-15 14:48) [0]

Ув. мастера, может кто сталкивался с такой проблемой: для удаления файлов из каталога использую следующую ф-цию:

function TMainForm.FileManage(FromFile, ToFile: string; mode: integer): integer;
var SHF: TSHFileOpStruct;
begin
with SHF do
begin
 Wnd :=0;
 pFrom := PChar(FromFile);
 pTo := PChar(ToFile);
 wFunc := mode;
 fFlags := FOF_ALLOWUNDO;
end;
Result := SHFileOperation(SHF);
if Result <> 0 then
 if SHF.fAnyOperationsAborted
  then Result := 1
  else Result := 2;
end;

Вызываю вот так: FileManage(ExtractFilePath(Application.ExeName) + "temp\*.*", "", FO_DELETE); , для удаления всех файлов из ..temp/  .

Проблема в следующем: не всегда получается удалить файлы - выдаёт ошибку, мол "Cannot read from source disk", ну или вроде этого. Сразу при запуске проги удалить можно, что-то как-то пощёлкаешь в проге - ошибка.
Может кто знает в чём трабл?


 
Smithson ©   (2004-04-15 14:49) [1]

А если файл в данный момент открыт (занят) - как его удалить?

Тем более в темпе, там вечно кто-то что-то пишет...


 
iVovs ©   (2004-04-15 14:52) [2]

temp - это мною созданная папка - для хранения временных файлов;
и при удалении эта папка программой(моей) не используется.


 
Anatoly Podgoretsky ©   (2004-04-15 15:35) [3]

pFrom := PChar(FromFile+#0);
pTo := PChar(ToFile+#0);


 
Amoeba ©   (2004-04-15 15:38) [4]

На "Королевстве Дельфи" есть отдельная статья на эту тему
http://www.delphikingdom.com/mastering/fileshellapi.htm



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.039 c
3-1081403294
Vilux
2004-04-08 09:48
2004.05.02
Не могу понять. почему не работает BETWEEN


3-1081353922
Алексей Комлев
2004-04-07 20:05
2004.05.02
Как получить результат TQuery в виде набора строк?


4-1079030059
BaDeVlad
2004-03-11 21:34
2004.05.02
Как сделать многоуровневую отмену в Richedit?


1-1082307275
DK
2004-04-18 20:54
2004.05.02
Нужно папку запоролить. Как моно сделать


3-1081251680
Апач
2004-04-06 15:41
2004.05.02
FIBPlus





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский