Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> удаление каталога 
:(
    Опции темы
Volkogriz
  Дата 23.12.2008, 11:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 16.9.2007

Репутация: 1
Всего: 1



Доброе время суток!
Программа оставляет лог с установленными файлами как по этому логу удалить установленные файлы с каталогами!?
Что только не пробовал везде ошибки или не чего не удаляется!!!(((
За рание благодарен!
С уважением,
Volkogriz!
--------------------
("`-''-/").___..--''"`-._`6_6  ) ,,,`-.  ( ''' ).` "_-.__.')(_Y_.)'  ._''' )  `._ `. ``-.__'.-'_..`--'_..-_/'''/--'_.' ,'(il).-'''''(li).'  ((!.-'
PM MAIL ICQ   Вверх
Данкинг
Дата 23.12.2008, 11:56 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 9
Всего: 130



Цитата(Volkogriz @  23.12.2008,  11:48 Найти цитируемый пост)
по этому логу удалить установленные файлы с каталогами!?

Распарсить лог, удалить файлы, которые там указаны, а затем удалить пустые каталоги. smile 

Цитата(Volkogriz @  23.12.2008,  11:48 Найти цитируемый пост)
Что только не пробовал везде ошибки или не чего не удаляется!!!(((

Ужас какой. smile 




--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Alexeis
Дата 23.12.2008, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Амеба
Group Icon


Профиль
Группа: Админ
Сообщений: 11743
Регистрация: 12.10.2005
Где: Зеленоград

Репутация: 109
Всего: 459



  Удалять можно только пустые папки, т.е. сначала нужно удалить все файлы, которые возможно могут быть занятыми, т.е. на них есть открытые дескрипторы. Если удалить все файлы, то папка удаляется без проблем.


--------------------
Vit вечная память.

Обсуждение действий администрации форума производятся только в этом форуме

гениальность идеи состоит в том, что ее невозможно придумать
PM ICQ Skype   Вверх
Poseidon
Дата 23.12.2008, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Delphi developer
****


Профиль
Группа: Комодератор
Сообщений: 5273
Регистрация: 4.2.2005
Где: Гомель, Беларусь

Репутация: 53
Всего: 133



Цитата(Volkogriz @  23.12.2008,  11:48 Найти цитируемый пост)
Программа оставляет лог с установленными файлами как по этому логу удалить установленные файлы с каталогами!?
Вообще-то этим деинсталятор занимается. Чем устанавливал, тем и удаляй.



--------------------
Если хочешь, что бы что-то работало - используй написанное, 
если хочешь что-то понять - пиши сам...
PM MAIL ICQ   Вверх
Volkogriz
Дата 23.12.2008, 12:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 16.9.2007

Репутация: 1
Всего: 1



Цитата(Poseidon @ 23.12.2008,  12:18)
Цитата(Volkogriz @  23.12.2008,  11:48 Найти цитируемый пост)
Программа оставляет лог с установленными файлами как по этому логу удалить установленные файлы с каталогами!?
Вообще-то этим деинсталятор занимается. Чем устанавливал, тем и удаляй.

Полностью согласен !
Но инстолятор я написал и в логе он сахраняет чтото типо этого:
Код

DATA\3ddata\Textures\small.tga
DATA\3ddata\Textures\small0.tga
DATA\3ddata\Textures\small1.tga
DATA\3ddata\Textures\Standard.tga
DATA\MAPS\#100 Mount Irulan Revisited\!05%thumb.tga
DATA\MAPS\#100 Mount Irulan Revisited\Mount Irulan Revisited.txt
DATA\MAPS\#100 Mount Irulan Revisited\test.cpf
DATA\MAPS\#100 Mount Irulan Revisited\test.cpt
DATA\MAPS\#100 Mount Irulan Revisited\test.lit
DATA\MAPS\#100 Mount Irulan Revisited\test.xbf

До этого допёр!!!
А вот как его использовать при удоление не доходит!!(
Я пробовал создать стринг лист!
Но я новичёк и не чего не получаеться!!!((
Вобщем ошибки и кстате всё время одну выдаёт :
Abstract  Error "Абстрактная Ошибка"!
Если не трудно можно пример!!!
С уважением,
Volkogriz!
--------------------
("`-''-/").___..--''"`-._`6_6  ) ,,,`-.  ( ''' ).` "_-.__.')(_Y_.)'  ._''' )  `._ `. ``-.__'.-'_..`--'_..-_/'''/--'_.' ,'(il).-'''''(li).'  ((!.-'
PM MAIL ICQ   Вверх
Данкинг
Дата 23.12.2008, 12:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 9
Всего: 130



Цитата(Volkogriz @  23.12.2008,  12:47 Найти цитируемый пост)
Я пробовал создать стринг лист!

Вот в него грузи список файлов, проходи в цикле по строкам и удаляй соответствующие файлы. Примеры - на форуме!


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Volkogriz
Дата 23.12.2008, 15:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 16.9.2007

Репутация: 1
Всего: 1



У меня совсем не чего не выходит вылетает на постой ошибка!!!
Abstract Error "Абстрактная Ошибка"!
Как же всётаки правельно это сделать подскажите пожалуйсто!!!
Код


var
i:integer;
begin
FilesDel:= TStringList.Create;
FilesDel.LoadFromFile(extractfilepath(application.exename)+'EmperorUni.log');
for i:=0 to FilesDel.count-1 do
begin
  if deletefile(extractfilepath(application.exename)+FilesDel.Strings[i]) then
 end;
end;

--------------------
("`-''-/").___..--''"`-._`6_6  ) ,,,`-.  ( ''' ).` "_-.__.')(_Y_.)'  ._''' )  `._ `. ``-.__'.-'_..`--'_..-_/'''/--'_.' ,'(il).-'''''(li).'  ((!.-'
PM MAIL ICQ   Вверх
Volkogriz
Дата 23.12.2008, 17:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 16.9.2007

Репутация: 1
Всего: 1



Вот ещё проблемка!!!
Исполняймый файл попал на диск C:\   

Код

function GetFiles(Path:String; Full: Boolean = False):TStrings;
   Var
   Rec:TSearchRec;
   TMP:TStrings;
   ls: String;
   i: integer;
begin
  Result:=TStringList.Create;
  if Path[Length(Path)]<>'\' Then Path:=Path+'\';
  //ChDir(Path);
  if FindFirst(Path+'\*.*',faAnyFile,Rec)=0 then
    begin
     if (Rec.Name<>'.')and(Rec.Name<>'..') then
       if (Rec.Attr and faDirectory) <> 0 then begin
       TMP:=GetFiles(Path+Rec.Name,True);
       Result.AddStrings(TMP);
       TMP.Free;
       end else Result.Add(Path+Rec.Name);

     while FindNext(Rec)=0 do
       begin
        if (Rec.Name<>'.')and(Rec.Name<>'..') then
         if (Rec.Attr and faDirectory) <> 0 then begin
         TMP:=GetFiles(Path+Rec.Name,True);
         Result.AddStrings(TMP);
         TMP.Free;
         end else Result.Add(Path+Rec.Name);
       end;
    end;

if not Full then
  for i:=0 to Result.Count-1 do
   begin
     ls := Result[i];
     Delete(ls,1,Length(Path));
     Result[i] := ls;
   end;
  FindClose(Rec);
end;

procedure TForm1.Button1Click(Sender: TObject);
var
c,i:integer;
begin
FilesDel:= TStringList.Create;
FilesDel.LoadFromFile(extractfilepath(application.exename)+'uni.log');
for i:=0 to FilesDel.count-1 do
deletefile(extractfilepath(application.exename)+FilesDel.Strings[i]);
for c:=0 to FilesDel.count-1 do
RemoveDirectory(Pchar(extractfilepath(application.exename)+FilesDel.Strings[c])) ;
end;

procedure TForm1.FormActivate(Sender: TObject);
begin
FilesDel:= TStringList.Create;
FilesDel.Assign(GetFiles(extractfilepath(application.exename)));
begin
FilesDel.SaveToFile(extractfilepath(application.exename)+'uni.log');
end;
end;
end.


Как от этого подстраховаться ?
P.S Пишу от соседа!!!


Это сообщение отредактировал(а) Volkogriz - 23.12.2008, 17:35
--------------------
("`-''-/").___..--''"`-._`6_6  ) ,,,`-.  ( ''' ).` "_-.__.')(_Y_.)'  ._''' )  `._ `. ``-.__'.-'_..`--'_..-_/'''/--'_.' ,'(il).-'''''(li).'  ((!.-'
PM MAIL ICQ   Вверх
bems
Дата 23.12.2008, 18:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 31
Всего: 88



Цитата(Volkogriz @  23.12.2008,  15:34 Найти цитируемый пост)
Abstract Error "Абстрактная Ошибка"!
Ты уверен что создаеш именно TStringList а не TStrings?



--------------------
Обижено школьников: 8
PM MAIL   Вверх
Volkogriz
Дата 23.12.2008, 18:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 16.9.2007

Репутация: 1
Всего: 1



Я уже разабрался спосибо!
Вот теперь проблемка !
Решил сделать так чтобы сканировалась директория игры и создавался лог файл!
Попробовал получилось!
Проблема как разумнее застрахавать файлы глобального диска,
Если исполняймый файл случайно попал например на диск c:\ То он его при запуске сосканирует при подверждении
всё файлы )
--------------------
("`-''-/").___..--''"`-._`6_6  ) ,,,`-.  ( ''' ).` "_-.__.')(_Y_.)'  ._''' )  `._ `. ``-.__'.-'_..`--'_..-_/'''/--'_.' ,'(il).-'''''(li).'  ((!.-'
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0752 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.