Estrutura CPINFO (winnls.h)
Contém informações sobre uma página de código. Essa estrutura é usada pela função GetCPInfo .
Sintaxe
typedef struct _cpinfo {
UINT MaxCharSize;
BYTE DefaultChar[MAX_DEFAULTCHAR];
BYTE LeadByte[MAX_LEADBYTES];
} CPINFO, *LPCPINFO;
Membros
MaxCharSize
Comprimento máximo, em bytes, de um caractere na página de código. O comprimento pode ser 1 para um conjunto de caracteres de byte único (SBCS), 2 para um DBCS ( conjunto de caracteres de byte duplo ) ou um valor maior que 2 para outros tipos de conjunto de caracteres. A função não pode usar o tamanho para distinguir um SBCS ou um DBCS de outros conjuntos de caracteres devido a outros fatores, por exemplo, o uso de páginas de código ISCII ou ISO-2022-xx.
DefaultChar[MAX_DEFAULTCHAR]
Caractere padrão usado ao traduzir cadeias de caracteres para a página de código específica. Esse caractere será usado pela função WideCharToMultiByte se um caractere padrão explícito não for especificado. O padrão geralmente é o caractere "?" da página de código.
LeadByte[MAX_LEADBYTES]
Uma matriz de comprimento fixo de intervalos de bytes de chumbo, para os quais o número de intervalos de bytes de chumbo é variável. Se a página de código não tiver bytes potenciais, cada elemento da matriz será definido como NULL. Se a página de código tiver bytes potenciais, a matriz especificará um valor inicial e um valor final para cada intervalo. Os intervalos são inclusivos e o número máximo de intervalos para qualquer página de código é cinco. A matriz usa dois bytes para descrever cada intervalo, com dois bytes nulos como terminador após o último intervalo.
Comentários
Os bytes potenciais são exclusivos para páginas de código DBCS que permitem mais de 256 caracteres. Um byte principal é o primeiro byte de um caractere de 2 bytes em um DBCS. Em cada página de código DBCS, os bytes potenciais ocupam um intervalo específico de valores de bytes. Esse intervalo é diferente para páginas de código diferentes.
As informações de byte de cliente potencial não são muito úteis para a maioria das páginas de código e nem são fornecidas para muitas codificações de vários bytes, por exemplo, UTF-8 e GB18030. Seus aplicativos são desencorajados a usar essas informações para prever o que a função MultiByteToWideChar ou WideCharToMultiByte fará. A função pode acabar usando um caractere padrão ou executando outro comportamento padrão se os bytes que seguem o byte de lead não forem os esperados.
CPINFOEX, usado pela função GetCPInfoEx , fornece uma versão estendida dessa estrutura.
Requisitos
Requisito | Valor |
---|---|
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 | winnls.h (inclua Windows.h) |