Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.08;
Скачать: CL | DM;

Вниз

????Ребят, как удалять Paramstr(0)????   Найти похожие ветки 

 
Denich   (2003-04-20 01:15) [0]

Все перепробовал... И FileDelete и Erase и с помощью ShellExecute... И с помощью реестра RunOnce и RunOnceEx...
В общем - HELP !!!


 
default ©   (2003-04-20 01:23) [1]

файл запущенной программы удалить нельзя
для обхода используют бат-файл


 
Chlavik ©   (2003-04-20 02:48) [2]

Всё там RunOnce помагает только вот сам файл загружать не надо...


 
Esu ©   (2003-04-20 12:29) [3]

Можно написать программу которая при запуске закрывает твою программу и удаляет после закрытия. Записать ее можно в ресурсы и потом извлекать в $tempdir%. После выполнения "полезной функции" пишет в RunOnce команду удаляющую собственно себя.

Chlavik © (20.04.03 02:48)
Просто в RunOnce нельзя. Ведь сразу компьютер перезагружать плохо (с EWX_FORCE естественно), а если перезагружать не сразу то кто-то может успеть похитить ценнейший программный продукт ;)


 
NightAngel   (2003-04-20 16:18) [4]

> Denich (20.04.03 01:15)
Все перепробовал... И FileDelete и Erase и с помощью ShellExecute... И с помощью реестра RunOnce и RunOnceEx...
В общем - HELP !!!


А что будет если приложение запущено с CD-ROM?
Извините... не удержался.

1. Можно создать thread в другом процессе и вызвать в нем функцию WaitForSingleObject с параметром - хэндлом процесса. После завершения можно удалять.

2. [ Current process ]
a) Create a new file with FILE_FLAG_DELETE_ON_CLOSE (function CreateFile()).
b) Copy the current executable"s content into the new file.
c) Create a new process with the duplicate executable:
d) Pass the current executable"s full path and PID in the call to CreateFile.
e) Sleep for a short time to give the new process time to start.
f) Close the new file.
g) Exit current process.

[ Duplicate process ]
h) Wait for the process specified on command-line to die.
i) Delete file specified on command-line.
j) Exit duplicate process.

3. Можно проще: в куче написать свое имя, потом подготовить стек, чтоб после возврата из FreeLibrary (на себя) мы приехали на DeleteFile и потом - ExitProcess или что-там-нужно.
Или можно исполняться прямо в стеке.

Вариантов - масса.



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

Текущий архив: 2003.05.08;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
14-23297
Донна Флор
2003-04-22 11:57
2003.05.08
Windows XP и замена системного диска


1-23198
AbrosimovA
2003-04-24 14:50
2003.05.08
Проблема произвести сортировку <U><B>с учетом регистра</B></U>


1-23080
maza
2003-04-25 23:52
2003.05.08
tab sheeeeeet


1-23166
alt7
2003-04-23 17:27
2003.05.08
Булевы глюки


1-23106
Demon_mhm
2003-04-25 19:51
2003.05.08
как организовать меню с галочками?