/SECTION (especificar atributos de seção)
/SECTION:name,[[!]{DEKPRSW}][,ALIGN=#]
Comentários
A opção /SECTION altera os atributos de uma seção, substituindo os atributos definidos quando o arquivo de .obj da seção foi compilado.
Uma seção em um arquivo executável portátil de (PE) é aproximadamente equivalente a um segmento ou recursos no novo arquivo executável (NE). As seções a seguir contêm código ou os dados. Diferentemente dos segmentos, as seções são blocos de memória contígua sem restrições de tamanho. Algumas seções a seguir contêm código ou os dados que seu programa declarados e usa diretamente, enquanto outras seções dos dados sejam criadas para você pelo gerenciador de biblioteca do vinculador e lib.exe () e contêm informações vitais o sistema operacional. Para obter mais informações sobre os arquivos de NE, consulte o artigo da Base de Dados de Conhecimento “formato de cabeçalho arquivo executável” (Q65122). Você pode localizar artigos da Base de Dados de Conhecimento na Biblioteca MSDN, ou em https://support.microsoft.com.
Especificar dois-pontos (:) e um nomede seção. O nome é com diferenciação de maiúsculas e minúsculas.
Não use os seguintes nomes, porque estarão em conflito com nomes padrão. Por exemplo, .sdata é usado em plataformas de RISC:
.arch
.bss
.data
.edata
.idata
.pdata
.rdata
.reloc
.rsrc
.sbss
.sdata
.srdata
.text
.xdata
Especifique um ou mais atributos para a seção. Os caracteres de atributo, listados abaixo, não diferenciam maiúsculas de minúsculas. Você deve especificar todos os atributos desejados a seção para ter; causas omitidas de um caractere de atributo que atribuem o operador bit a ser desativado. Se você não especificar R, W, ou E, a existência leitura, gravação, ou o status executável permanecem inalterados.
Para negar um atributo, antecedeu o caractere com um ponto de exclamação (!). Os significados dos caracteres de atributo são mostrados abaixo.
Caractere |
Atributo |
Significado |
---|---|---|
E |
Executar |
A seção é executável |
R |
Ler |
Permite operações de leitura em dados |
W |
Write |
Permite operações de gravação de dados |
S |
Compartilhado |
Compartilha a seção entre todos os processos que carregam a imagem |
D |
Discardable |
Marca a seção como discardable |
K |
Cacheable |
Marca a seção como não cacheable |
P |
Paginável |
Marca a seção como não paginável |
K e P peculiares que os sinalizadores da seção que eles correspondem estão no sentido negativo. Se você especificar um deless na seção de .text (/SECTION: .text, K), não será diferenças nos sinalizadores da seção quando você executa DUMPBIN com a opção de /HEADERS ; já foi armazenado em cachê implicitamente. Para remover a opção, especifique /SECTION: .text! K e o DUMPBIN revelarão características da seção, incluir “não armazenado em cachê”.
Uma seção no arquivo de PE que não tem E, em R, ou em W definido provavelmente é inválido.
O =# ALINHAR permite especificar um valor de alinhamento para uma seção específica. Consulte /ALIGN para obter mais informações.
Para definir esta opção do vinculador no ambiente de desenvolvimento do Visual Studio
Abra a caixa de diálogo Páginas de Propriedade do projeto. Para obter detalhes, consulte Configurando as propriedades de projeto do Visual C++.
Clique na pasta Vinculador.
Clique na página de propriedades de Linha de Comando.
Digite a opção na caixa de Opções Adicionais .
Para definir essa opção de vinculador por meio de programação
- Consulte AdditionalOptions.