Diese Makros erstellen Sie eine Kopie von einem DEVMODE oder TEXTMETRIC Struktur und Convert Zeichenfolgen innerhalb der neuen Struktur in einer neuen Zeichenfolge eingeben. Die Makros zuweisen von Speicher auf dem Stapel für die neue Struktur und einen Zeiger auf die neue Struktur zurück.
Die Syntax ist:
MAKRONAME ( Address_of_structure )
Zum Beispiel:
DEVMODEA2W (Lpa)
und
TEXTMETRICA2W (Lptma)
In der Makronamen der String-Typ in der Ausgangsstruktur ist auf der linken Seite (z. B. A) und der String-Typ in die Ziel-Struktur auf der rechten Seite (z. B. W) ist. A steht für LPSTR, OLE steht für LPOLESTR, T steht für LPTSTRund w steht für LPWSTR.
So strukturieren DEVMODEA2W Kopien eine DEVMODE -Struktur mit LPSTR in eine DEVMODE -Struktur mit LPWSTR Streicher, TEXTMETRICOLE2T Kopien Zeichenfolgen eine TEXTMETRIC Struktur mit LPOLESTR in einer TEXTMETRIC Zeichenfolgen mit LPTSTR Zeichenfolgen usw.
Die beiden Zeichenfolgen konvertiert in der DEVMODE -Struktur sind der Device-Name (DmDeviceName) und den Namen des Formulars (DmFormName). Die DEVMODE -Konvertierung-Zeichenfolgenmakros aktualisieren auch die Strukturgröße (DmSize).
Die vier Zeichenfolgen konvertiert in die TEXTMETRIC Struktur sind das erste Zeichen (TmFirstChar), das letzte Zeichen (TmLastChar), das Standardzeichen (TmDefaultChar) und das Zeichen für Zeilenumbruch (TmBreakChar).
Das Verhalten der DEVMODE und TEXTMETRIC Zeichenfolge-Konvertierung Makros hängt die Compiler-Direktive in Kraft, falls vorhanden. Wenn die Quell- und Ziel-Typen identisch sind, findet keine Konvertierung statt. Compiler-Direktiven ändern wie folgt, T und OLE:
| Compiler-Direktive in Kraft | T wird | OLE wird |
| keine | A | W |
| _UNICODE | W | W |
| OLE2ANSI | A | A |
| _UNICODE und OLE2ANSI | W | A |
Die folgende Tabelle listet die DEVMODE und TEXTMETRIC Zeichenfolge-Konvertierung Makros.
DEVMODE und TEXTMETRIC String-Konvertierung Makros
| DEVMODEA2W | TEXTMETRICA2W |
| DEVMODEOLE2T | TEXTMETRICOLE2T |
| DEVMODET2OLE | TEXTMETRICT2OLE |
| DEVMODEW2A | TEXTMETRICW2A |
ATL-Makros und globale Funktionen
Siehe auch