次の方法で共有


DEVNAMES 構造体

更新 : 2007 年 11 月

DEVNAMES 構造体は、プリンタのドライバ名、デバイス名、出力ポート名を識別する文字列を保持します。

typedef struct tagDEVNAMES { /* dvnm */
    WORD wDriverOffset;
    WORD wDeviceOffset;
    WORD wOutputOffset;
    WORD wDefault;
    /* driver, device, and port-name strings follow wDefault */
} DEVNAMES;

パラメータ

  • wDriverOffset
    (入力/出力) デバイス ドライバのファイル名 (拡張子を除く) を含む NULL で終わる文字列へのオフセットを指定します。入力時には、この文字列を使って、ダイアログ ボックスで最初に表示するプリンタを決めます。

  • wDeviceOffset
    (入力/出力) デバイス名を含む null で終わる文字列 (null を含めて最大 32 バイトまで) へのオフセットを文字単位で指定します。この文字列は、DEVMODE 構造体の dmDeviceName メンバと同一である必要があります。

  • wOutputOffset
    (入力/出力) 物理的な出力メディア (出力ポート) の MS-DOS デバイス名を含む NULL で終わる文字列へのオフセットを指定します。

  • wDefault
    DEVNAMES 構造体に保持される文字列が既定のプリンタを指定しているかどうかを指定します。この文字列は、直前の印刷操作以降に既定のプリンタが変更されていないことを確認するために使われます。入力時には、DN_DEFAULTPRN フラグが設定されていると、DEVNAMES 構造体のそのほかの値が現在の既定のプリンタに対して適切な値かどうかが調べられます。一致していない文字列があると、ドキュメントを再フォーマットする必要があることをユーザーに通知するため、警告メッセージが表示されます。出力時には、[プリンタの設定] ダイアログ ボックスが表示され、ユーザーが [OK] ボタンをクリックしたときにだけ、wDefault メンバが変更されます。既定のプリンタが選択されたときは DN_DEFAULTPRN フラグが設定されます。特定のプリンタが選択されたときは、フラグは設定されません。このメンバのほかのすべてのビットは、[印刷] ダイアログ ボックス プロシージャが内部的に使用するために予約されています。

解説

PrintDlg 関数は、システム定義の [印刷] ダイアログ ボックスのメンバを初期化するためにこれらの文字列を使います。ユーザーがダイアログ ボックスを閉じると、選択されたプリンタに関する情報がこの構造体に返されます。

必要条件

ヘッダー : commdlg.h

参照

参照

CPrintDialog::CreatePrinterDC

その他の技術情報

構造体、スタイル、コールバック関数とメッセージ マップ