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


/SECTION (Указание атрибутов раздела)

/SECTION:name,[[]!{DE|K||P|SWR||}][],ALIGN=number

Замечания

Параметр /SECTION изменяет атрибуты раздела, переопределяя атрибуты, заданные при .obj компиляции файла для раздела.

Раздел в переносимом исполняемом файле (PE) — это именованный смежный блок памяти, содержащий код или данные. Некоторые разделы содержат код или данные, объявленные программой и использующие их напрямую. Другие разделы данных создаются компоновщиком и диспетчером библиотеки (LIB) и содержат сведения, важные для операционной системы. Дополнительные сведения см. в разделе Формат переносимого исполняемого файла.

Укажите двоеточие (:) и имя nameраздела. Учитывается name регистр.

Не используйте следующие имена, так как они конфликтуют со стандартными именами. Например, .sdata используется на платформах RISC:

  • .arch

  • .bss

  • .data

  • .edata

  • .idata

  • .pdata

  • .rdata

  • .reloc

  • .rsrc

  • .sbss

  • .sdata

  • .srdata

  • .text

  • .xdata

Укажите один или несколько атрибутов для раздела. Символы атрибутов, перечисленные ниже, не учитывает регистр. Необходимо указать все атрибуты, которые нужно иметь в разделе. Опущенный символ атрибута приводит к отключению бита атрибута. Если вы не укажете или WEне укажете Rсуществующее состояние чтения, записи или исполняемого файла, остается неизменным.

Чтобы отменить атрибут, предшествуйте его символу восклицательный знак (!). Значения символов атрибутов показаны в следующей таблице:

Символ Атрибут Значение
E Выполнить Раздел — исполняемый файл
R Читать Разрешает операции чтения с данными
W Write Разрешает операции записи данных
S Совмещаемая блокировка Предоставляет общий доступ ко всем процессам, которые загружают образ.
D Отменяемый Помечает раздел как отменяемый
K Кэшируемые Помечает раздел как недоступный для кэширования
P Страница с возможностью страницы Помечает раздел как недоступный для страницы

K и P являются необычными в том, что флаги раздела, соответствующие им, используются в отрицательном смысле. Если вы указали один из них в .text разделе с помощью /SECTION:.text,K параметра, при запуске DUMPBIN с /HEADERS параметром нет разницы в флагах разделов. Этот раздел уже был неявно кэширован. Чтобы удалить значение по умолчанию, укажите /SECTION:.text,!K вместо него. DUMPBIN показывает характеристики раздела, включая "Не кэшированные".

Раздел в pe-файле, который не имеет E, Rили W набор, вероятно, недопустим.

Аргумент ALIGN=number позволяет указать значение выравнивания для определенного раздела. Аргумент number находится в байтах и должен быть мощностью двух. Дополнительные сведения см. в разделе /ALIGN.

Задание данного параметра компоновщика в среде разработки Visual Studio

  1. Откройте диалоговое окно Страницы свойств проекта. Дополнительные сведения см. в разделе Set компилятора и свойств сборки.

  2. Выберите страницу свойств>компоновщика>конфигурации "Общие свойства".

  3. Измените свойство "Указать атрибуты раздела". Нажмите кнопку "ОК" или "Применить", чтобы сохранить изменения.

Задание данного параметра компоновщика программным способом

См. также

Справочник по компоновщику MSVC
Параметры компоновщика MSVC