DEVMODE and TEXTMETRIC String Conversion Macros
Diese Makros erstellen eine Kopie einer DEVMODE oder TEXTMETRIC-Struktur und konvertieren die Zeichenfolgen in der neuen Struktur zu einem neuen Zeichenfolgentyp. Die Makros belegen auf dem Stapel für die neue Struktur Speicher und geben einen Zeiger auf die neue Struktur zurück.
MACRONAME(
address_of_structure
)
Hinweise
Beispiel:
DEVMODEW* lpw = DEVMODEA2W(lpa);
und:
TEXTMETRICW* lptmw = TEXTMETRICA2W(lptma);
In den Makronamen ist Zeichenfolgentyp in der Quellstruktur links (beispielsweise, A) und Zeichenfolgentyp in der Zielstruktur ist auf der rechten Seite (beispielsweise, W). A wird für LPSTR, wird OLE für LPOLESTR, wird T für LPTSTR und W Stände für LPWSTR.
Daher kopiert DEVMODEA2W eine DEVMODE-Struktur mit LPSTR Zeichenfolgen in eine DEVMODE-Struktur mit LPWSTR Zeichenfolgen, TEXTMETRICOLE2T kopiert eine TEXTMETRIC-Struktur mit LPOLESTR Zeichenfolgen in eine TEXTMETRIC-Struktur mit LPTSTR Zeichenfolgen, u. a.
Die zwei Zeichenfolgen, die in der DEVMODE-Struktur konvertiert werden, sind der Gerätename (dmDeviceName) und der Formularname (dmFormName). Die DEVMODE-Makros für Zeichenfolgenkonvertierung aktualisieren auch die Strukturgröße (dmSize).
Die vier Zeichenfolgen, die in der TEXTMETRIC-Struktur konvertiert werden, sind das erste Zeichen (tmFirstChar), das letzte Zeichen (tmLastChar), das standardmäßige Zeichen (tmDefaultChar) und die Unterstreichung (tmBreakChar).
Das Verhalten der DEVMODE und TEXTMETRIC-Makros für Zeichenfolgenkonvertierung hängt von den Compilerdirektiven gültig, wenn eine ab. Wenn Quelle und die Zieltypen identisch sind, findet keine Konvertierung statt. Compilerdirektivenänderung T und OLE, wie folgt:
Compilerdirektiven wirksam |
T wird |
OLE wird |
---|---|---|
Keine |
A |
W |
_UNICODE |
W |
W |
OLE2ANSI |
A |
A |
_UNICODE und OLE2ANSI |
W |
A |
In der folgenden Tabelle werden die DEVMODE und TEXTMETRIC-Makros für Zeichenfolgenkonvertierung auf.
DEVMODE- und TEXTMETRIC-Makros für Zeichenfolgenkonvertierung
DEVMODEA2W |
TEXTMETRICA2W |
DEVMODEOLE2T |
TEXTMETRICOLE2T |
DEVMODET2OLE |
TEXTMETRICT2OLE |
DEVMODEW2A |
TEXTMETRICW2A |
Siehe auch
Konzepte
ATL and MFC String Conversion Macros