Condividi tramite


Supporto per MBCS in Visual C++

Il sistema di sviluppo Visual C++, compresi l'editor integrato del codice sorgente, il debugger e gli strumenti della riga di comando, supporta il formato MBCS, ad eccezione della finestra Memoria, quando viene eseguito su una versione del sistema operativo Windows 2000 o Windows XP predisposta per tale formato.

La finestra Memoria non interpreta i byte di dati come caratteri MBCS, anche se è in grado di interpretarli come caratteri ANSI o Unicode. La dimensione dei caratteri ANSI è sempre pari a 1 byte, mentre quella dei caratteri Unicode a due byte. Con il formato MBCS la dimensione dei caratteri può essere pari a uno o due byte e la relativa interpretazione dipende dalla tabella codice in uso. È per questo motivo che la finestra Memoria non è in grado di visualizzare in modo affidabile i caratteri MBCS. La finestra Memoria non conosce infatti il byte corrispondente all'inizio di un carattere. Lo sviluppatore può visualizzare i valori dei byte nella finestra Memoria, nonché cercare il valore nelle tabelle per determinare la rappresentazione del carattere. Tale operazione è possibile perché lo sviluppatore conosce l'indirizzo iniziale di una stringa basata sul codice sorgente.

Visual C++ accetta i caratteri a byte doppio quando necessario, ovvero nei nomi dei percorsi e dei file nelle finestre di dialogo e nelle immissioni di testo nell'editor delle risorse di Visual C++, ad esempio il testo statico nell'editor delle finestre e le immissioni di testo statico nell'editor delle icone. Inoltre, il preprocessore riconosce alcune istruzioni a byte doppio, ad esempio i nomi di file nelle istruzioni #include e come argomenti dei pragma code_seg e data_seg. Nell'editor del codice sorgente i caratteri a byte doppio vengono accettati nei commenti e nelle stringhe letterali, mentre non vengono accettati negli elementi del linguaggio C/C++, ad esempio nei nomi di variabile.

Supporto per l'IME (Input Method Editor, editor del metodo di input)

In genere, le applicazioni scritte per i mercati dell'Estremo Oriente che utilizzano il formato MBCS, ad esempio il mercato giapponese, supportano l'IME di Windows per l'immissione di caratteri sia a byte singolo che doppio. L'ambiente di sviluppo di Visual C++ offre il supporto completo per l'IME. Per ulteriori informazioni, vedere Esempio IME: Dimostrazione del controllo della modalità IME e dell'implementazione del livello IME 3.

Le tastiere giapponesi non supportano direttamente i caratteri Kanji. L'IME converte una stringa fonetica, immessa in uno degli altri sistemi di scrittura giapponesi (Romaji, Katakana o Hiragana) nella possibile rappresentazione corrispondente Kanji. Se si crea ambiguità, è possibile scegliere tra diverse alternative. Una volta selezionato il carattere Kanji desiderato, l'IME passa due messaggi WM_CHAR all'applicazione di controllo.

L'IME, attivato dalla combinazione di tasti ALT+`, viene visualizzato come una serie di pulsanti (un indicatore) e una finestra di conversione. L'applicazione posiziona la finestra nel punto di inserimento del testo. L'applicazione dovrà gestire i messaggi WM_MOVE e WM_SIZE riposizionando la finestra di conversione in modo che si adatti alla nuova posizione o alle nuove dimensioni della finestra di destinazione.

Se si desidera che gli utenti dell'applicazione siano in grado di immettere i caratteri Kanji, l'applicazione dovrà poter gestire i messaggi dell'IME di Windows. Per ulteriori informazioni sulla programmazione IME, vedere Editor del metodo di input (IME).

Debugger di Visual C++

Il debugger di Visual C++ consente di impostare i punti di interruzione sui messaggi dell'IME e di visualizzare nella finestra Memoria i caratteri a byte doppio.

Strumenti della riga di comando

Gli strumenti della riga di comando di Visual C++, inclusi il compilatore, NMAKE e il compilatore di risorse (RC.EXE), sono abilitati per il formato MBCS. Quando si compilano le risorse dell'applicazione, è possibile utilizzare l'opzione /c del compilatore di risorse per modificare la tabella codici predefinita.

Per modificare le impostazioni locali predefinite durante la compilazione del codice sorgente, utilizzare #pragma setlocale.

Strumenti grafici

Gli strumenti di Visual C++ per Windows, quali Spy++ e gli strumenti per la modifica delle risorse, offrono il supporto completo delle stringhe IME.

Vedere anche

Concetti

Supporto per set di caratteri multibyte (MBCS, Multibyte Character Set)

Suggerimenti sulla programmazione MBCS