DEVMODE和TEXTMETRIC字符串翻译宏
这些宏创建 DEVMODE 或 TEXTMETRIC 结构的副本并将在新结构中的字符串转换为一个新字符串类型。宏在堆栈上分配内存新的结构并返回指向新的结构。
MACRONAME(
address_of_structure
)
备注
例如:
DEVMODEW* lpw = DEVMODEA2W(lpa);
和:
TEXTMETRICW* lptmw = TEXTMETRICA2W(lptma);
在宏名称,该字符串类型源结构在左侧(例如,)和该字符串键入目标framework右边(例如,W)。A 委托 LPSTR,OLE 委托 LPOLESTR,T 委托 LPTSTR和 W 位置 LPWSTR的。
因此,DEVMODEA2W 副本与 LPSTR 字符串的一 DEVMODE 该结构与 LPWSTR 字符串,TEXTMETRICOLE2T 的一 DEVMODE 结构副本与 LPOLESTR 字符串的一 TEXTMETRIC 该结构与 LPTSTR 字符串的一 TEXTMETRIC 结构,依此类推。
在 DEVMODE 结构转换的两个字符串是计算机名称(dmDeviceName)和窗体名称(dmFormName)。DEVMODE 字符串翻译宏还更新机制范围(dmSize)。
在 TEXTMETRIC 结构转换的四个字符串作为第一个字符(tmFirstChar),最后一个字符(tmLastChar),默认字符(tmDefaultChar)和换行符(tmBreakChar)。
DEVMODE 和 TEXTMETRIC 字符串翻译宏的行为实际依赖于编译器指令,因此,如果有的话)。如果源页和目标类型相同,将不会发生。编译器指令更改 T 和 OLE 如下所示:
编译器指令实际 |
T变为 |
OLE变为 |
---|---|---|
无 |
A |
W |
_UNICODE |
W |
W |
OLE2ANSI |
A |
A |
_UNICODE 和 OLE2ANSI |
W |
A |
下表列出了 DEVMODE 和 TEXTMETRIC 字符串翻译宏。
DEVMODE和TEXTMETRIC字符串翻译宏
DEVMODEA2W |
TEXTMETRICA2W |
DEVMODEOLE2T |
TEXTMETRICOLE2T |
DEVMODET2OLE |
TEXTMETRICT2OLE |
DEVMODEW2A |
TEXTMETRICW2A |