• 🚨 29 мая стартует курс «Пентест Active Directory: от теории к практике» от Академии Кодебай

    🔍 Изучите реальные техники атак на инфраструктуру Active Directory: от первоначального доступа до полной компрометации.
    🛠️ Освойте инструменты, такие как BloodHound, Mimikatz, CrackMapExec и другие.
    🧪 Пройдите практические лабораторные работы, имитирующие реальные сценарии атак.
    🧠 Получите знания, которые помогут вам стать востребованным специалистом в области информационной безопасности.

    После старта курса запись открыта еще 10 дней Подробнее о курсе ...

  • Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

Мигающая Иконка В Tab У Tabcontrol

  • Автор темы Автор темы Shouldercannon
  • Дата начала Дата начала
Совсем Вас не понимаю. Так сделал, потому что проще в реализации и уже видел такой же способ реализации у других.
 
Перевёл проект с Delphi 7 на Delphi XE7 и получил ошибку при создании потока
Код:
constructor TAlarmer.Create(ControlWin: HWND);
begin
  inherited Create(True);
  FreeOnTerminate := False; // После завершения, должен быть удалён вручную!
  FControl := ControlWin; // Хэндл окна TTabControl, куда "моргать" картинками
  Start; //!// Project Project1.exe raised exception class EThread with message 'Cannot call Start on a running or suspended thread'.
end;
Исправлено. Поскольку в конструкторе потока нет параметра TRUE, то Start не надо вызывать - поток уже стартанул после создания сразу.
Код:
constructor TAlarmer.Create(ControlWin: HWND);
begin
  inherited Create(False);
  FreeOnTerminate := False; // После завершения, должен быть удалён вручную!
  FControl := ControlWin; // Хэндл окна TTabControl, куда "моргать" картинками
end;
Работает. Надеюсь без плохих последствий
 
Последнее редактирование:
Перевёл проект с Delphi 7 на Delphi XE7 и получил ошибку при создании потока
Исправлено. Поскольку в конструкторе потока нет параметра TRUE, то Start не надо вызывать - поток уже стартанул после создания сразу.
Код:
constructor TAlarmer.Create(ControlWin: HWND);
begin
  inherited Create(False);
  FreeOnTerminate := False; // После завершения, должен быть удалён вручную!
  FControl := ControlWin; // Хэндл окна TTabControl, куда "моргать" картинками
end;
Работает. Надеюсь без плохих последствий
Угу... только тогда вот так
Код:
constructor TAlarmer.Create(ControlWin: HWND);
begin
  FControl := ControlWin; // Хэндл окна TTabControl, куда "моргать" картинками
  inherited Create(False);
  FreeOnTerminate := False; // После завершения, должен быть удалён вручную!
end;
Именно потому что после строчки inherited Create(False); "поток уже стартанул" :)
 
  • Нравится
Реакции: Shouldercannon
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!

Курс AD