Главная страница
    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.45 MB
Время: 0.01 c
7-23411
Maxim2030
2003-03-17 10:08
2003.05.08
Dll не загружается


3-22969
дд
2003-04-17 12:21
2003.05.08
Создание User и права доступа


1-23053
LyzD
2003-04-23 23:32
2003.05.08
Как прочитать файл в кодировке Unicode


14-23357
Ekateryna
2003-04-18 15:28
2003.05.08
HELP ME!!!


8-23241
Ssergy
2003-01-27 20:27
2003.05.08
Сплайны 3D





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский