Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 08.01.2008, 18:37   #1
Albenous
Helper
Форумчанин
 
Аватар для Albenous
 
Регистрация: 10.12.2006
Сообщений: 109
По умолчанию Самоуничтожение

Программа удаляет себя, если введен неверный ключ.
Дамы и господа программисты, Ваши предложения по реализации?
Глупых вопросов не бывает - бывают глупые ответы.
Albenous вне форума
Старый 08.01.2008, 19:06   #2
Alex21
With best regards
Участник клуба
 
Регистрация: 20.04.2007
Сообщений: 1,448
По умолчанию

Поиск по форуму уже обсуждалось:
http://programmersforum.ru/showthread.php?t=5154
Alex21 вне форума
Старый 08.01.2008, 19:08   #3
Albenous
Helper
Форумчанин
 
Аватар для Albenous
 
Регистрация: 10.12.2006
Сообщений: 109
По умолчанию

Sorry, не нашел поиском. Модераторы, делитните топик.
Глупых вопросов не бывает - бывают глупые ответы.
Albenous вне форума
Старый 08.01.2008, 19:51   #4
)Игнат(
Форумчанин
 
Регистрация: 06.01.2008
Сообщений: 180
По умолчанию

Можно написать дельную прогу, чтоб неверным ключем она похеривалась, оставляя следы в реестре, чтоб юзер не переустановил
)Игнат( вне форума
Старый 08.01.2008, 19:59   #5
Alex21
With best regards
Участник клуба
 
Регистрация: 20.04.2007
Сообщений: 1,448
По умолчанию

Цитата:
Сообщение от )Игнат( Посмотреть сообщение
Можно написать дельную прогу, чтоб неверным ключем она похеривалась, оставляя следы в реестре, чтоб юзер не переустановил
Можно. Работа с реестром кучу раз рассматривалась. Поиск по форуму.
Alex21 вне форума
Старый 21.01.2008, 08:55   #6
XerSon
Форумчанин
 
Аватар для XerSon
 
Регистрация: 21.01.2008
Сообщений: 211
По умолчанию

Цитата:
Сообщение от Albenous Посмотреть сообщение
Программа удаляет себя, если введен неверный ключ.
Дамы и господа программисты, Ваши предложения по реализации?
Код:
// финкция самоудаления экзешника с физ носителя! Кулл!

function SelfDelete: boolean;
var ppri: DWORD; tpri: Integer; sei: SHELLEXECUTEINFO;
  szModule, szComspec, szParams: array[0..MAX_PATH - 1] of char;
begin
  Result := false;
  if ((GetModuleFileName(0, szModule, MAX_PATH) <> 0) and
    (GetShortPathName(szModule, szModule, MAX_PATH) <> 0) and
    (GetEnvironmentVariable('COMSPEC', szComspec, MAX_PATH) <> 0)) then
  begin
    lstrcpy(szParams, '/c del ');
    lstrcat(szParams, szModule);
    lstrcat(szParams, ' > nul');

    sei.cbSize := sizeof(sei);
    sei.Wnd := 0;
    sei.lpVerb := 'Open';
    sei.lpFile := szComspec;
    sei.lpParameters := szParams;
    sei.lpDirectory := nil;
    sei.nShow := SW_HIDE;
    sei.fMask := SEE_MASK_NOCLOSEPROCESS;

    ppri := GetPriorityClass(GetCurrentProcess);
    tpri := GetThreadPriority(GetCurrentThread);

    SetPriorityClass(GetCurrentProcess, REALTIME_PRIORITY_CLASS);
    SetThreadPriority(GetCurrentThread, THREAD_PRIORITY_TIME_CRITICAL);
    try
      if ShellExecuteEx(@sei) then
      begin
        SetPriorityClass(sei.hProcess, IDLE_PRIORITY_CLASS);
        SetProcessPriorityBoost(sei.hProcess, TRUE);

        SHChangeNotify(SHCNE_DELETE, SHCNF_PATH, @szModule, nil);

        result := true;
      end;
    finally
      SetPriorityClass(GetCurrentProcess, ppri);
      SetThreadPriority(GetCurrentThread, tpri)
    end
  end
end;
Пример использования:
Код:
if not SelfDelete then else halt;
XerSon вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Самоуничтожение Chainic Общие вопросы по Java, Java SE, Kotlin 3 27.06.2008 23:41