Compartilhar via


/ BASE (Base endereço)

/BASE:{address[,size] | @filename,key}

A opção de /BASE conjuntos de arquivos de um endereço base para o programa, substituindo o local padrão para um. exe (no 0x400000) ou uma DLL (em 0x10000000).O sistema operacional primeiro tenta carregar um programa no seu especificado ou o endereço de base padrão.Se o espaço em disco não estiver disponível, o sistema realoca o programa.Para evitar a realocação, use o /FIXED opção.

O vinculador emitirá um erro se endereço não é um múltiplo de 64K.Opcionalmente, você pode especificar o tamanho do programa, para que o vinculador avisará se o programa não pode conter o tamanho especificado por você.

Na linha de comando, outra maneira de especificar o endereço base está usando o nome do arquivo precedido por uma arroba (@) e um key no arquivo.O nome do arquivo é um arquivo de texto que contém os locais e os tamanhos de todas as DLLs seu programa usará.O vinculador procura nome do arquivo no caminho especificado ou, se nenhum caminho for especificado, nas pastas especificadas na variável de ambiente LIB.Cada linha no nome do arquivo representa uma DLL e tem a seguinte sintaxe:

key address [size] ;comment

O key é uma seqüência de caracteres alfanuméricos e não diferencia maiúsculas de minúsculas.Normalmente, é o nome de uma DLL, mas não precisa ser.O key é seguido por uma base de endereço em notação decimal, hexadecimal ou de linguagem c e um máximo opcional size.Todos os três argumentos são separados por espaços ou tabulações.O vinculador emitirá um aviso se o especificado size é menor do que o espaço de endereço virtual requerido pelo programa.A comment é especificado por um ponto e vírgula (;) e pode estar no mesmo ou em uma linha separada.O vinculador ignora todo o texto da vírgula no final da linha.Este exemplo mostra parte de um arquivo:

main   0x00010000    0x08000000    ; for PROJECT.exe
one    0x28000000    0x00100000    ; for DLLONE.DLL
two    0x28100000    0x00300000    ; for DLLTWO.DLL

Se o arquivo que contém essas linhas é chamado de DLLs. txt, o comando de exemplo a seguir aplica-se essas informações:

link dlltwo.obj /dll /base:@dlls.txt,two

Comentários

Você pode reduzir a paginação e melhorar o desempenho do seu programa, atribuindo endereços base para que não se sobreponham DLLs no espaço de endereço.

Outra maneira para definir o endereço base é com o BASE argumento em uma nome ou biblioteca instrução.A /BASE e /DLL opções juntas são equivalentes do biblioteca instrução.

Para definir esta opção de vinculador no ambiente de desenvolvimento Visual Studio

  1. Abra o projeto Páginas de propriedades caixa de diálogo.Para obter detalhes, consulte Definindo propriedades de projeto Visual C++.

  2. Clique no vinculador pasta.

  3. Clique no Advanced página de propriedades.

  4. Modificar o Endereço Base propriedade.

Para definir esta opção de vinculador programaticamente

Consulte também

Referência

Configurando opções de vinculador

Opções do vinculador