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

Вниз

Как удалить программу после ее отработки (UnInstall.exe)   Найти похожие ветки 

 
VS2001   (2002-12-09 07:25) [0]

Помогите сделать указанное в теме. Нужно для программы ДеИнсталлятора, чтобы удалялась после завершения работы.


 
SPeller ©   (2002-12-09 13:36) [1]

Точно ошибся... Ну какое это имеет отношение к КОЛ ?


 
VS2001   (2002-12-09 14:34) [2]

Какое? А как мне можно удалить файл вообще.
Если использовать TSearchRec - то он ругается на необъявленный идентификутор = TSearchec.


 
BorisMor ©   (2002-12-09 15:03) [3]

Ну, тогда не совсем понятен вопрос.
Надо самоудаление сделать ?
Делайте *.bat (del.bat) в котором и делается удаление

UnInstall.exe
del UnInstall.exe /Q
del del.bat /Q

и запускае del.bat


 
alex_s   (2002-12-12 04:08) [4]

Под 2000 и XP работает, а более я нигде
не проверял.

unit selfkill;

interface
uses windows;

procedure killself;

implementation

procedure killself;
var
module : HMODULE;
buf : array[0..MAX_PATH] of CHAR;
plong : ULONG;
begin

module := GetModuleHandle(nil);
GetModuleFileName(module, buf, sizeof(buf));
CloseHandle(4);
( module) Под 2000 и XP работает, а более я нигде
не проверял.

unit selfkill;

interface
uses windows;

procedure killself;

implementation

procedure killself;
var
module : HMODULE;
buf : array[0..MAX_PATH] of CHAR;
plong : ULONG;
begin

module := GetModuleHandle(nil);
GetModuleFileName(module, buf, sizeof(buf));
CloseHandle(4);
plong := ULONG(module) + 1;

asm
lea eax, buf
push 0
push 0
push eax
mov esi, offset ExitProcess + 2
mov esi, [esi]
mov esi, [esi]
push esi
push [plong]
mov esi, offset DeleteFile + 2
mov esi, [esi]
mov esi, [esi]
push esi
mov esi, offset FreeLibrary + 2
mov esi, [esi]
mov esi, [esi]
push esi
ret
end;
end;

end.





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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
14-45080
Lony
2003-06-14 02:55
2003.08.14
Hook на создание окна.


14-45079
dimonf
2003-06-15 15:07
2003.08.14
Подскажите, как правильно передать параметр в поток!


14-45022
Tyrande
2003-07-28 20:58
2003.08.14
COS, SIN


14-45017
UI
2003-07-28 21:04
2003.08.14
Инет анлим


14-45115
Pavel_s
2003-06-11 13:25
2003.08.14
Virtual Desktop