Condividi tramite


Funzione NlsDllCodePageTranslation (gb18030.h)

Usato per ottenere informazioni sulla tabella codici o eseguire la conversione, a seconda delle impostazioni del flag.

Nota Non usare questa funzione. Può comportarsi in modo diverso in versioni diverse di Windows. Per convertire gb18030 byte in caratteri Unicode o caratteri Unicode in gb18030 byte, usare le funzioni MultiByteToWideChar e WideCharToMultiByte .
 

Sintassi

DWORD NlsDllCodePageTranslation(
  [in]      DWORD    CodePage,
  [in]      DWORD    dwFlags,
  [in, out] LPSTR    lpMultiByteStr,
  [in]      int      cchMultiByte,
  [in, out] LPWSTR   lpWideCharStr,
  [in]      int      cchWideChar,
  [in]      LPCPINFO lpCPInfo
);

Parametri

[in] CodePage

Valore della tabella codici. Il valore della tabella codici deve essere 54936. In caso contrario, la funzione restituisce un codice di errore.

[in] dwFlags

Flag che specificano la traduzione. I valori possibili sono definiti nella tabella seguente.

Valore Significato
NLS_CP_CPINFO
Recuperare le informazioni sulla tabella codici nel buffer a cui punta lpCPInfo. I parametri lpMultiByteStr, cchMultiByte, lpWideCharStr e cchWideChar non vengono usati.
NLS_CP_MBTOWC
Convertire gb18030 byte in caratteri Unicode. I caratteri gb18030 di origine devono essere indicati da lpMultiByteStr e cchMultiByte deve contenere il conteggio dei byte del buffer. Il risultato Unicode viene archiviato nel buffer a cui punta lpWideCharStr e cchWideChar deve contenere il conteggio dei caratteri del buffer Unicode. Se lpWideCharStr o cchWideChar è 0, il conteggio dei caratteri previsto del risultato Unicode viene restituito e non viene eseguita alcuna conversione. Il parametro lpCPInfo non viene usato in questo caso.
NLS_CP_WCTOMB
Convertire i caratteri Unicode in GB18030 byte. La stringa Unicode di origine deve essere puntata da lpWideCharStr e cchWideChar deve contenere il conteggio dei caratteri del buffer. Il risultato GB18030 viene archiviato nel buffer a cui fa riferimento lpMultiByteStr e cchMultiByte deve contenere il conteggio dei byte del buffer GB18030. Se lpMultiByteStr o cchMultiByte è 0, il conteggio dei byte del risultato GB18030 viene restituito e non viene eseguita alcuna conversione. Il parametro lpCPInfo non viene usato in questo caso.

[in, out] lpMultiByteStr

Puntatore a un buffer contenente caratteri multibyte GB18030. Questo può essere un buffer di origine o un buffer di destinazione, a seconda del valore di dwFlags.

[in] cchMultiByte

Numero di byte del buffer multibyte.

[in, out] lpWideCharStr

Puntatore a un buffer che contiene caratteri Unicode. Questo può essere un buffer di origine o un buffer di destinazione, a seconda del valore di dwFlags.

[in] cchWideChar

Numero di caratteri del buffer Unicode.

[in] lpCPInfo

Puntatore a una struttura CPINFO .

Valore restituito

Restituisce 1 se ha esito positivo. Se la funzione non riesce, restituisce 0. Per ottenere informazioni sull'errore estese, l'applicazione può chiamare GetLastError, che può restituire uno dei codici di errore seguenti:

  • ERROR_INVALID_PARAMETER. Uno dei valori dei parametri non è valido.

Requisiti

   
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione gb18030.h
DLL C_g18030.dll

Vedi anche

MultiByteToWideChar

WideCharToMultiByte