![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Убить себя [D7, Win2k, WinXP]
Builder © (2004-12-15 04:25:00)Как по простому убить свой же екзешник, который просто занимается тем, что переносит инсталяцию из одной папки в другую (он находится в этой же папке, посему должен быть убит).
?
GuAV (2004-12-15 13:07:00) [1]dr Tr0jan (15.12.04 8:00) [2]
rem proga.exe /y
rem batnik.bat /y
LOL
REM
Enables you to include comments in a batch file or in your CONFIG.SYS file.
The REM command is also useful for disabling commands.
Семен Сорокин (2004-12-15 12:19:00) [2]
> pasha_golub © (15.12.04 12:10) [6]
> А если вдруг не хватит прав удалить, оно так и будет в цикле
> крутиться вечно?
Ну уж прям на создание файла (Rewrite) прав хватило, а на удаление нет... можно конечно и еще что-нибудь придумать.
и почему вечно - до след. перезагрузки :))
dr Tr0jan (2004-12-15 12:17:00) [3]Еще обязательно параметр
/q /f- для Win2K/XP и/y- для Win98/Me.
А закливание все же не стоит делать, все может случиться...
pasha_golub (2004-12-15 12:10:00) [4]Семен Сорокин © (15.12.04 10:13) [5]
А если вдруг не хватит прав удалить, оно так и будет в цикле крутиться вечно?
Семен Сорокин (2004-12-15 10:13:00) [5]
> Fedia © (15.12.04 08:33) [3]
> Программа то может легко подождать момента, когда вызывающее
> ее приложение закроется, а вот bat файл может сработать
> до закрытия программы и не принести желаемого результата.
если немного модифицировать:
// создаем бат файл
_tmp := 'C:\' + TMP_BAT_FILE;
AssignFile(_f, _tmp);
try
Rewrite(_f);
Writeln(_f, '@echo off');
Writeln(_f, ':del_loop');
Writeln(_f, 'del ' + ParamStr(0));
Writeln(_f, 'if exist ' + ParamStr(0) + ' goto del_loop');
Writeln(_f, 'del ' + _tmp);
finally
CloseFile(_f)
end;
// теперь запускаем
ShellExecute(hInstance, nil, pchar(_tmp), nil, nil, SW_HIDE);
KSergey (2004-12-15 08:45:00) [6]> [3] Fedia © (15.12.04 08:33)
start /wait - и все будет путем ;)
Fedia (2004-12-15 08:33:00) [7]>dr Tr0jan (15.12.04 08:00) [2]
Программа то может легко подождать момента, когда вызывающее ее приложение закроется, а вот bat файл может сработать до закрытия программы и не принести желаемого результата.
dr Tr0jan (2004-12-15 08:00:00) [8]Я думаю, что даже проще будет батник заюзать.
Создаешь батник со следущим содержанием:
rem proga.exe /y
rem batnik.bat /y
А затем перед завршением установки запускай этот батник.
Fedia (2004-12-15 07:52:00) [9]>Убить себя
:))
Пусть данная программа запускает другую программу, например из новой директории, в параметрах запуска которой передавай путь и имя убиваемого файла. Затем купирующую программу закрывай, после чего запущенная программа должна удалить файл, указанный в параметрах своего запуска и закрыться.