Поделиться через


Структура TEB (winternl.h)

[Эта структура может быть изменена в будущих версиях Windows. Приложения должны использовать альтернативные функции, перечисленные в этом разделе.]

Структура thread Environment Block (TEB) описывает состояние потока.

Синтаксис

typedef struct _TEB {
  PVOID Reserved1[12];
  PPEB  ProcessEnvironmentBlock;
  PVOID Reserved2[399];
  BYTE  Reserved3[1952];
  PVOID TlsSlots[64];
  BYTE  Reserved4[8];
  PVOID Reserved5[26];
  PVOID ReservedForOle;
  PVOID Reserved6[4];
  PVOID TlsExpansionSlots;
} TEB, *PTEB;

Члены

Reserved1[12]

Зарезервировано для внутреннего использования операционной системой.

ProcessEnvironmentBlock

Указатель на структуру PEB , содержащую сведения о процессе в целом.

Reserved2[399]

Зарезервировано для внутреннего использования операционной системой.

Reserved3[1952]

Зарезервировано для внутреннего использования операционной системой.

TlsSlots[64]

Данные для локального хранилища потока. Вызовите функцию TlsGetValue , чтобы получить к ней доступ.

Reserved4[8]

Зарезервировано для внутреннего использования операционной системой.

Reserved5[26]

Зарезервировано для внутреннего использования операционной системой.

ReservedForOle

Не используйте. Вместо этого вызовите CoGetContextToken .

Reserved6[4]

Зарезервировано для внутреннего использования операционной системой.

TlsExpansionSlots

Дополнительные данные для локального хранилища потока. Вызовите функцию TlsGetValue , чтобы получить к ней доступ.

Комментарии

Определение этой структуры может меняться с одной версии Windows на другую. Не предполагайте максимальный размер для этой структуры. Сведения о членах этой структуры см. в статье winternal.h.

Не следует напрямую обращаться к этой структуре. Чтобы получить доступ к значениям полей TlsSlots и TlsExpansionSlots , вызовите TlsGetValue. Чтобы получить доступ к значению поля ReservedForOle , вызовите CoGetContextToken.

В следующих версиях Windows смещение 32-разрядного адреса TEB в 64-разрядном TEB равно 0. Его можно использовать для прямого доступа к 32-разрядному TEB потока WOW64. Это может измениться в более поздних версиях Windows.

Windows Vista Windows Server 2008
Windows 7 Windows Server 2008 R2
Windows 8 Windows Server 2012
Windows 8.1 Windows Server 2012 R2

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Верхняя часть winternl.h

См. также раздел

TlsGetValue