DEVMODE and TEXTMETRIC String Conversion Macros

这些宏创建 DEVMODETEXTMETRIC 结构的副本并将在新结构中的字符串转换为一个新字符串类型。 宏在堆栈上分配内存新的结构并返回指向新的结构。

MACRONAME( 
   address_of_structure  
)

备注

例如:

DEVMODEW* lpw = DEVMODEA2W(lpa);

和:

TEXTMETRICW* lptmw = TEXTMETRICA2W(lptma);

在宏名称,该字符串类型源结构在左侧(例如,)和该字符串键入目标framework右边(例如,W)。 A 委托 LPSTROLE 委托 LPOLESTRT 委托 LPTSTRW 位置 LPWSTR的。

因此,DEVMODEA2W 副本与 LPSTR 字符串的一 DEVMODE 该结构与 LPWSTR 字符串,TEXTMETRICOLE2T 的一 DEVMODE 结构副本与 LPOLESTR 字符串的一 TEXTMETRIC 该结构与 LPTSTR 字符串的一 TEXTMETRIC 结构,依此类推。

DEVMODE 结构转换的两个字符串是计算机名称(dmDeviceName)和窗体名称(dmFormName)。 DEVMODE 字符串翻译宏还更新机制范围(dmSize)。

TEXTMETRIC 结构转换的四个字符串作为第一个字符(tmFirstChar),最后一个字符(tmLastChar),默认字符(tmDefaultChar)和换行符(tmBreakChar)。

DEVMODETEXTMETRIC 字符串翻译宏的行为实际依赖于编译器指令,因此,如果有的话)。 如果源页和目标类型相同,将不会发生。 编译器指令更改 TOLE 如下所示:

编译器指令实际

T变为

OLE变为

A

W

_UNICODE

W

W

OLE2ANSI

A

A

_UNICODEOLE2ANSI

W

A

下表列出了 DEVMODETEXTMETRIC 字符串翻译宏。

DEVMODE和TEXTMETRIC字符串翻译宏

DEVMODEA2W

TEXTMETRICA2W

DEVMODEOLE2T

TEXTMETRICOLE2T

DEVMODET2OLE

TEXTMETRICT2OLE

DEVMODEW2A

TEXTMETRICW2A

请参见

概念

ATL and MFC String Conversion Macros

其他资源

ATL 宏