Macros de conversion de chaînes

Ces macros fournissent des fonctionnalités de conversion de chaîne.

Macros de conversion de chaînes ATL et MFC

Les macros de conversion de chaînes présentées ici sont valides à la fois pour ATL et pour MFC. Pour plus d’informations sur la conversion de chaîneS MFC, consultez TN059 : Utilisation de macros de conversion MFC MBCS/Unicode et macros MFC et globals.

Macros de conversion de chaînes DEVMODE et TEXTMETRIC

Ces macros créent une copie d’une structure DEVMODE ou TEXTMETRIC et convertissent les chaînes dans la nouvelle structure en un nouveau type de chaîne. Les macros allouent de la mémoire sur la pile pour la nouvelle structure et retournent un pointeur vers la nouvelle structure.

MACRONAME( address_of_structure )

Notes

Par exemple :

DEVMODEW* lpw = DEVMODEA2W(lpa);

et

TEXTMETRICW* lptmw = TEXTMETRICA2W(lptma);

Dans les noms de macros, le type de chaîne dans la structure source se trouve à gauche (par exemple, A) et le type de chaîne dans la structure de destination se trouve à droite (par exemple, W). A signifie LPSTR, OLE signifie LPOLESTR, T signifie LPTSTR, et W pour LPWSTR.

Ainsi, DEVMODEA2W copie une DEVMODE structure avec des chaînes LPSTR dans une DEVMODE structure avec des chaînes LPWSTR, TEXTMETRICOLE2T copie une TEXTMETRIC structure avec des chaînes LPOLESTR dans une TEXTMETRIC structure avec des chaînes LPTSTR, et ainsi de suite.

Les deux chaînes converties dans la structure sont le nom de l’appareil DEVMODE (dmDeviceName) et le nom du formulaire (dmFormName). Les DEVMODE macros de conversion de chaîne mettent également à jour la taille de la structure (dmSize).

Les quatre chaînes converties dans la TEXTMETRIC structure sont le premier caractère (tmFirstChar), le dernier caractère (tmLastChar), le caractère par défaut (tmDefaultChar) et le caractère d’arrêt (tmBreakChar).

Le comportement des macros de conversion de DEVMODE chaîne et TEXTMETRIC de chaîne dépend de la directive du compilateur en vigueur, le cas échéant. Si les types source et de destination sont les mêmes, aucune conversion n'est effectuée. Les directives du compilateur changent T et OLE comme suit :

Directive du compilateur appliquée T devient OLE devient
Aucune A W
_UNICODE W W
OLE2ANSI A A
_UNICODE et OLE2ANSI W A

Le tableau suivant répertorie les DEVMODE macros de TEXTMETRIC conversion de chaîne et de chaîne.

Macro DEVMODE Macro TEXTMETRIC
DEVMODEA2W TEXTMETRICA2W
DEVMODEOLE2T TEXTMETRICOLE2T
DEVMODET2OLE TEXTMETRICT2OLE
DEVMODEW2A TEXTMETRICW2A

Voir aussi

Macros