Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как заставить exe-файл удалять самого себя? [D7, Win95/98, WinME, NT4, Win2k, WinXP]


MooSE ©   (2004-09-09 12:52:00) 

Привет всем!

Проблема такая: Пиши Uninstall'ер для своей программы, написал почти всё, кроме одной очень важно мелочи: В конце Uninstall'ер должен удалить сам себя. DeleteFile для этого не подходит, может кто-нибудь сталкивался с подобной проблемой и знает как её решить?

Заранее благодарю.


MooSE   (2004-09-16 14:17:00) [1]

Всем спасибо. Помогли здорово!!!!


DVM   (2004-09-09 13:06:00) [2]


> Александр1   (09.09.04 13:02) [3]

А чем мой первый вариант не подходит. Нет там никаких перезагрузок.


Александр1   (2004-09-09 13:04:00) [3]


> MooSE   (09.09.04 12:52)  

Знаешь есть хороший сайт. http://www.delphisyte.ru/Articles/Articles_2/internetIndex.htm
Там много готовых примеров и по удалению самого себя тоже есть!


Александр1   (2004-09-09 13:02:00) [4]


> DVM ©   (09.09.04 12:57) [2]

А если мне надо бес перезагрузки компа?
Я сколько чё-то не мучился, так и не рашил этой проблемы.


DVM   (2004-09-09 12:57:00) [5]

Решение при помощи реестра
1. Создаем ключ в ветви реестра HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce с любым именем, например del_self и значением del [полное имя и путь к EXE файлу]
2. Просим пользователя перезагрузить компьютер (или делаем это принудительно). Команда из ключа сработает при следующей загрузке и будет автоматически удалена из реестра


DVM   (2004-09-09 12:56:00) [6]

Создай файл *.bat такого содержания:

:Sub_Main
@Del /F /Q MyApp.exe
@Cls
@If Exist MyApp.exe Goto Sub_Main
@Del /F /Q Killer.bat

И запусти перед выходом (желательно, в скрытом виде).


Наверх

Титульная страница Поиск, карта сайта Написать письмо