DEVMODE および TEXTMETRIC の各文字列変換マクロ

これらのマクロは、DEVMODE 構造体または TEXTMETRIC 構造体のコピーを作成し、このコピー内の文字列を新しい文字列型に変換します。マクロは、新しい構造体のスタックにメモリを割り当て、新しい構造体へのポインターを返します。

MACRONAME( 
   address_of_structure  
)

解説

以下はその例です。

DEVMODEW* lpw = DEVMODEA2W(lpa);

および

TEXTMETRICW* lptmw = TEXTMETRICA2W(lptma);

マクロ名には、文字列を左にソースの構造をに入力します (たとえば、A) および文字列は右側にコピー先の構造体をに入力します (たとえば、W)。ALPSTRを意味します OLELPOLESTRを意味します TLPWSTRLPTSTRW の立場を意味します。

したがって、DEVMODEA2WLPTSTR の文字列を含む TEXTMETRIC の構造に LPWSTR の文字列、TEXTMETRICOLE2T を持つ DEVMODE の構造に LPSTR の文字列を含む DEVMODE の構造をコピー LPOLESTR の文字列を含む構造体の TEXTMETRIC などをコピーします。

DEVMODE の構造体に変換される 2 文字列は、デバイス名 (dmDeviceName) とフォームの名前 (dmFormName) です。DEVMODE の文字列変換マクロは、構造体のサイズ (dmSize) を更新します。

TEXTMETRIC の構造体に変換される 4 文字列は、最初の文字 (tmFirstChar)、最後の文字 (tmLastChar)、既定の文字 (tmDefaultChar)、および改行文字 (tmBreakChar) です。

DEVMODETEXTMETRIC の文字列変換マクロの動作は、コンパイラ ディレクティブであれば、仮想異なります。コピー元とコピー先の型が同じ場合、変換は行われません。次のようにコンパイラ ディレクティブの変更 TOLE :

コンパイラ ディレクティブ仮想

T は

OLE は

[none]

A

W

_UNICODE

W

W

OLE2ANSI

A

A

_UNICODEOLE2ANSI

W

A

次の表は DEVMODETEXTMETRIC の文字列変換マクロを示します。

DEVMODE および TEXTMETRIC の各文字列変換マクロ

DEVMODEA2W

TEXTMETRICA2W

DEVMODEOLE2T

TEXTMETRICOLE2T

DEVMODET2OLE

TEXTMETRICT2OLE

DEVMODEW2A

TEXTMETRICW2A

参照

概念

ATL と MFC の文字列変換マクロ

その他の技術情報

ATL マクロ