Вниз
Скачать: CL | DM;

Как удалить неудаляемый файл.   Найти похожие ветки 

← →
programmerts   (2002-07-12 19:38) [0]

Мне нужно удалить пару файлов, занятых другим приложением.
А также надо удалить мою *.dll.
Как это зделать.
Желательно с примером.
Заранее спасибо.


← →
BAY ©   (2002-07-12 19:43) [1]

убей приложение


← →
Anatoly Podgoretsky ©   (2002-07-12 19:53) [2]

Как убить Дункан МакЛауда?


← →
LENIN INC   (2002-07-12 21:18) [3]

Используемый файл нельзя удалить! Но можно удалить после перезагрузки компьютера, прописав
его в ключ реестра RUNONCE. После перезагрузки компьютера выполняется действие, определенное в этом ключе, а потом данные из него удаляются автоматом. Вот что должно быть прописано:

command.com /c del "Путь/ИмяФайла"

Вот код, разбирайся.

uses
Registry;

//функция занесения в реестр инфы
PROCEDURE RUNONSTARTUP(SPROGTITLE, SCMDLINE : STRING; BRUNONCE : BOOLEAN );
VAR
SKEY : STRING;
REG : TREGINIFILE;
BEGIN
IF( BRUNONCE )THEN SKEY := "ONCE"
ELSE SKEY := "";
REG := TREGINIFILE.CREATE( "" );
REG.ROOTKEY := HKEY_LOCAL_MACHINE;
REG.WRITESTRING(
"SOFTWARE\MICROSOFT"
+ "\WINDOWS\CURRENTVERSION\RUNONCE"
+ SKEY + #0,
SPROGTITLE,
SCMDLINE );
REG.FREE;
END;

//По нажатию кнопки...
procedure TForm1.Button1Click(Sender: TObject);
begin
if Application.MessageBox("Удалить файл и перезагрузить машину?","Заголовок окна", MB_YESNO)
= ID_YES then
begin
RUNONSTARTUP("Удаление...", "command.com /c del " +(""")+(ИмяФайла)+("""), false );
ExitWindowsEx(EWX_REBOOT,0);
end
else
Exit;
end;


Вот это - (""") - нужно для поддержки command.com длинного пути. Так ты сможешь удалить файл, который находится в любом каталоге и с любым именем - длинным или коротким.


← →
programmerts   (2002-07-15 19:40) [4]

Да после перегрузки, я знаю как, но если удалять много файлов сразу.
Что удалить можно без болезненно я знаю, на С++, знакомый делал, в Windows надо какую-то dll отключить, а после удаления опять подключить, но вот какую?



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.011 c
1-95436
TTCustomDelphiMaster
2002-07-16 21:06
2002.07.29
Ошибка при удалении объектов


8-95457
Дмитрий Катаев
2002-01-26 19:12
2002.07.29
Реально ли на Delphi написать _конкурентноспособный_ трехмерный движок?


4-95618
Фокс
2002-05-23 08:40
2002.07.29
Завершение работы ОС


4-95602
Влад!
2002-05-16 22:24
2002.07.29
MessageBox & MB_RIGHT


1-95438
Александр
2002-07-16 22:43
2002.07.29
Что я не так делаю?




   Наверх