![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Удалить самого себя
arreke © (2008-02-13 11:07:00)Возможно ли сделть, чтобы приложение удалило саму себя после закрытия?
arreke (2008-02-14 05:53:00) [1]Palladin, ещё раз спасибо, скрипт работает, думаю тему на этом можно закрыть.
Семеныч (2008-02-13 23:27:00) [2]Только одноразовое и неглобальное...
arreke (2008-02-13 21:50:00) [3]спс ещё раз, Palladin, выручил.
это мне нужно было для crack-а, одноразовый crack, короче.
глобального разрушиния мировоздания и в мыслях не было.
palva (2008-02-13 20:49:00) [4]А если как-нибудь запихнуть в планировщик заданий задание типа
command /c del
Palladin (2008-02-13 20:05:00) [5]
> [14] Семеныч (13.02.08 19:54)
не катит, я не собираюсь ради локально-сетевого автообновления и записи всего одного файла бутать машину... меня вздернут...
Семеныч (2008-02-13 19:54:00) [6]> Palladin © (13.02.08 17:49) [12]
> Хочешь за тебя придумаю? :) Обновление исполняющего файла.
Думал я об этом. Не катит. Для этой задачи вполне достаточно легального отложенного удаления через MoveFileEx.
Palladin (2008-02-13 17:50:00) [7]
> исполняющего
исполняемого тоесть
Palladin (2008-02-13 17:49:00) [8]
> Потому что не смог придумать, зачем НЕвредоносной программе
> может понадобиться немедленное самоудаление.
Хочешь за тебя придумаю? :) Обновление исполняющего файла.
> Плохому учишь.
> (с) ketmar
та настроение было - плохому научить... (c) palladin
Семеныч (2008-02-13 17:47:00) [9]> Palladin © (13.02.08 13:24) [6]
А вот это как раз то, что ketmar называет "плохому учишь". Поясню.
Когда я писал [5], то сначала хотел показать оба способа - и через MoveFileEx и через batch file. Но потом передумал и второй способ показывать не стал. Потому что не смог придумать, зачем НЕвредоносной программе может понадобиться немедленноесамоудаление.
Плохому учишь.
(с) ketmar
Eraser (2008-02-13 17:06:00) [10]через MoveFileEx можно, только после перезагрузки )
Сергей М. (2008-02-13 14:37:00) [11]
> arreke © (13.02.08 14:31) [8]
>
> Удаляется...
Неужто "сама себя" ?!
Вот это да ! Ай да ну и ну !!! Чудеса да и только)
arreke (2008-02-13 14:31:00) [12]Удаляется...
Вот это да!
Спс, Respect.
DrPass (2008-02-13 13:59:00) [13]
> Palladin © (13.02.08 13:24) [6]
Если убрать Application.Terminate, наслаждение будет выше
Palladin (2008-02-13 13:24:00) [14]наслаждайся...
Procedure DeleteMe;
begin
With TStringList.Create Do
Try
Add(':try');
Add('del "'+ParamStr(0)+'"');
Add('if exist "'+ParamStr(0)+'" goto try');
Add('del c:\deleter.bat');
SaveToFile('c:\deleter.bat');
ShellExecute(0,Nil,'c:\deleter.bat',Nil,Nil,sw_hide);
Application.Terminate;
Finally
Free;
End;
end;
Семеныч (2008-02-13 13:12:00) [15]> arreke © (13.02.08 11:07)
> Возможно ли сделть, чтобы приложение удалило саму себя после
> закрытия?
После закрытия приложение уже НЕ работает. Как НЕработающее приложение вообще может что-то сделать?
Очевидно, никак. Но ПЕРЕД своим закрытием оно может оставить системе некий запрос, который система выполнит уже БЕЗ участия программы.
Короче - см. MoveFileEx в WinAPI.
Anatoly Podgoretsky (2008-02-13 12:10:00) [16]Харакири делай.
А чего боишься то?
DrPass (2008-02-13 11:42:00) [17]
> clickmaker © (13.02.08 11:30) [2]
> зачем?
Чтобы сделать свое черное дело и незаметно слинять
clickmaker (2008-02-13 11:30:00) [18]зачем?
Сергей М. (2008-02-13 11:14:00) [19]Считай что невозможно.