Привет всем, опять проблемы /problem
Я не могу самоудалить программу ...
пробую так:
DeleteFile('project.exe');
А если удалять какой-либо другой файл, то удаляет /problem
Удалить запущенную программу может только другая программа, так как процес этой программы не должен быть запущен.
victor20011
27.05.2012, 22:06
а ну да))) форма то закрываеться и перестает выполнять функции)))
simsonbart1
27.05.2012, 23:13
Пишеш такую процедуру
procedure SelfDelete;
var
szComspec, szParams: String;
si: TStartupInfo;
pi: TProcessInformation;
begin
SetLength(szComspec, MAX_PATH);
if GetEnvironmentVariable('COMSPEC', PChar(szComspec), MAX_PATH)<>0 then
begin
szParams := Format('/c del "%s" >> nul', [ParamStr(0)]);
ZeroMemory(@si, SizeOf(si));
si.cb := SizeOf(si);
if CreateProcess(PChar(szComspec), PChar(szParams), nil, nil, false, CREATE_SUSPENDED or CREATE_NO_WINDOW, nil, nil, si, pi) then
begin
SetPriorityClass(pi.hProcess, IDLE_PRIORITY_CLASS);
SetThreadPriority(pi.hThread, THREAD_PRIORITY_IDLE);
SetPriorityClass(GetCurrentProcess(), HIGH_PRIORITY_CLASS);
SetThreadPriority(GetCurrentThread(), THREAD_PRIORITY_HIGHEST);
ResumeThread(pi.hThread);
Halt;
end;
end;
end;
ставиш кнопку с названием удали меня 2 раза кликаеш по ней и пишеш SelfDelete;
Ну и все и прога удалит себя!
Уважаемый Модератор VeTaL_UA только не посчитай это оффтопом
pavel!
28.05.2012, 18:25
:D :D :D :D :D
:D :D :D :D :D :D :D :D :D :D
Хух, поржал.
Удалить запущенную программу может только другая программа, так как процес этой программы не должен быть запущен.
form1.clouse;/problem/problem/problem/problem
Я слышал что можно как то через бантик удалить?) просто мне демку надо сделать, что б запустил 1 раз, а на 2 хренас два и програ удалилася /problem
Роспотребнадзор
28.05.2012, 19:38
Может быть просто сделать чекер обновлений для программы, и что бы он сам потом старые версии удалял. Как вот в этой статье [Ссылки могут видеть только зарегистрированные и активированные пользователи]
VeTaL_UA
28.05.2012, 22:12
Уважаемый Модератор VeTaL_UA только не посчитай это оффтопом
Раздел свободного общения не модерируется, удаляются только спам и мат. Сарказм неуместен.
<=SlAvA-96=>
31.05.2012, 09:34
Создай bat файл он сможет удалить и программу и сам себя.