Я хочу, чтобы в окне списка нитей в Delphi 6 IDE отображалось удобное имя, удобное для пользователя.Я нашел приведенный ниже код в Интернете для этого в Delphi 6, поскольку, насколько мне известно, в этой версии не реализована встроенная функция SetThreadName ().Я вызываю его из метода Execute () моего потока.Я знаю, что он вызывается, потому что IDE всплывает, когда возникает исключение.Однако, когда я просматриваю список потоков (Ctrl + Alt + T), я не вижу установленного имени.Я просто вижу обычные столбцы Thread Id, State, Status и Location, больше ничего.
Что мне нужно сделать по-другому, чтобы отобразить имена потоков?Кроме того, у кого-нибудь есть идеи о том, как остановить IDE от остановки в строке RaiseException?У меня много потоков в программе, и раздражает, что IDE появляется N раз при каждом запуске программы.
Я знаю, что могу отключить IDE при остановке Delphi Exceptions, но я хочу это нормально, и яЯ бы предпочел, чтобы вам не приходилось его выключать, и каждый раз при создании нового набора потоков.
Именованные потоки в Delphi - для чего это нужно?
procedure SetThreadName_delphi(const Name: string);
type
TThreadNameInfo =
record
RecType: LongWord;
Name: PChar;
ThreadID: LongWord;
Flags: LongWord;
end;
var
info:TThreadNameInfo;
begin
// This code is extremely strange, but it's the documented way of doing it!
info.RecType := $1000;
info.Name := PChar(Name);
info.ThreadID := $FFFFFFFF;
info.Flags := 0;
try
RaiseException($406D1388, 0,
SizeOf(info) div SizeOf(LongWord), PDWord(@info));
except
end;
end;