Compartilhar via


Função WriteConsoleOutputAttribute

Importante

Este documento descreve a funcionalidade da plataforma do console que não faz mais parte do nosso roteiro de ecossistema. Não recomendamos o uso desse conteúdo em novos produtos, mas continuaremos a oferecer suporte aos usos existentes por tempo indeterminado. Nossa solução moderna preferida se concentra em sequências de terminais virtuais para máxima compatibilidade em cenários de multiplataforma. Você pode encontrar mais informações sobre essa decisão de design em nosso documento Console clássico versus terminal virtual.

Copia vários atributos de caracteres para células consecutivas de um buffer de tela do console, começando em um local especificado.

Sintaxe

BOOL WINAPI WriteConsoleOutputAttribute(
  _In_        HANDLE  hConsoleOutput,
  _In_  const WORD    *lpAttribute,
  _In_        DWORD   nLength,
  _In_        COORD   dwWriteCoord,
  _Out_       LPDWORD lpNumberOfAttrsWritten
);

Parâmetros

hConsoleOutput [in]
Um identificador do buffer da tela do console. O identificador deve ter o direito de acesso GENERIC_WRITE. Para saber mais, confira Segurança de buffer e direitos de acesso do console.

lpAttribute [entrada]
Os atributos a serem usados ao gravar no buffer de tela do console. Para saber mais, confira Atributos de caracteres.

nLength [entrada]
O número de células de caracteres do buffer de tela nas quais os atributos serão copiados.

dwWriteCoord [entrada]
Uma estrutura COORD que especifica as coordenadas de caracteres da primeira célula no buffer de tela do console no qual os atributos serão gravados.

lpNumberOfAttrsWritten [saída]
Um ponteiro para uma variável que recebe o número de atributos realmente gravados no buffer de tela do console.

Valor retornado

Se a função for bem-sucedida, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será zero. Para obter informações de erro estendidas, chame GetLastError.

Comentários

Se o número de atributos a serem gravados se estender além do final da linha especificada no buffer de tela do console, os atributos serão gravados na próxima linha. Se o número de atributos a serem gravados se estender além do final do buffer de tela do console, os atributos serão gravados até o final do buffer de tela do console.

Os valores de caracteres nas posições gravadas não são alterados.

Dica

Essa API tem um terminal virtual equivalente nas sequeências de formatação de texto e posicionamento do cursor. Mova o cursor para o local a ser inserido, aplique a formatação desejada e escreva o texto para preencher. Não há equivalente para aplicar cores a uma área sem também emitir texto. Essa decisão intencionalmente alinha a plataforma do Windows com outros sistemas operacionais nos quais se espera que o aplicativo cliente individual se lembre do seu próprio estado desenhado para manipulação posterior.

Requisitos

   
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho ConsoleApi2.h (via WinCon.h, inclui o Windows.h)
Biblioteca Kernel32.lib
DLL Kernel32.dll

Confira também

Funções de Console

COORD

Funções de saída do console de baixo nível

ReadConsoleOutput

ReadConsoleOutputAttribute

ReadConsoleOutputCharacter

WriteConsoleOutput

WriteConsoleOutputCharacter