PRINTER_NOTIFY_INFO_DATA構造体

PRINTER_NOTIFY_INFO_DATA構造体は、ジョブまたはプリンター情報フィールドを識別し、そのフィールドの現在のデータを提供します。

FindNextPrinterChangeNotification 関数は、PRINTER_NOTIFY_INFO_DATA構造体の配列を含むPRINTER_NOTIFY_INFO構造体を返します。

構文

typedef struct _PRINTER_NOTIFY_INFO_DATA {
  WORD  Type;
  WORD  Field;
  DWORD Reserved;
  DWORD Id;
  union {
    DWORD  adwData[2];
    struct {
      DWORD  cbBuf;
      LPVOID pBuf;
    } Data;
  } NotifyData;
} PRINTER_NOTIFY_INFO_DATA, *PPRINTER_NOTIFY_INFO_DATA; ;

メンバー

Type

提供される情報の種類を示します。 このメンバーには、次のいずれかの値を指定できます。

説明
JOB_NOTIFY_TYPE
0x01
Field メンバーがJOB_NOTIFY_FIELD_* 定数を指定することを示します。
PRINTER_NOTIFY_TYPE
0x00
Field メンバーがPRINTER_NOTIFY_FIELD_* 定数を指定することを示します。

フィールド

変更されたフィールドを示します。 使用可能な値の一覧については、「解説」セクションを参照してください。

Reserved

予約済み。

Id

Type メンバーがJOB_NOTIFY_TYPEを指定する場合は、ジョブ識別子を示します。 Type メンバーがPRINTER_NOTIFY_TYPEを指定した場合、このメンバーは未定義です。

NotifyData

Type メンバーと Field メンバーに基づくデータ情報の和集合。 各フィールドに関連付けられているデータの種類の説明については、「解説」セクションを参照してください。

adwData[2]

2 つの DWORD 値の配列。 1 つの DWORD のみを使用する情報フィールドの場合、データは adwData [0] にあります。

データ

cbBuf

pBuf が指すバッファーのサイズをバイト単位で示します。

pBuf

フィールドの現在のデータを含むバッファーへのポインター。

注釈

Type メンバーがPRINTER_NOTIFY_TYPEを指定する場合、Field メンバーには次のいずれかの値を指定できます。

フィールド データの種類
PRINTER_NOTIFY_FIELD_SERVER_NAME サポートされていません。 0x00
PRINTER_NOTIFY_FIELD_PRINTER_NAME pBuf は、プリンターの名前を含む null で終わる文字列へのポインターです。 0x01
PRINTER_NOTIFY_FIELD_SHARE_NAME pBuf は、プリンターの共有ポイントを識別する null で終わる文字列へのポインターです。 0x02
PRINTER_NOTIFY_FIELD_PORT_NAME pBuf は、印刷ジョブが出力されるポートの名前を含む null で終わる文字列へのポインターです。 [プリンター プール] が選択されている場合、これはポートのコンマ区切りの一覧です。 0x03
PRINTER_NOTIFY_FIELD_DRIVER_NAME pBuf は、プリンターのドライバーの名前を含む null で終わる文字列へのポインターです。 0x04
PRINTER_NOTIFY_FIELD_COMMENT pBuf は、新しいコメント文字列を含む null で終わる文字列へのポインターであり、通常はプリンターの簡単な説明です。 0x05
PRINTER_NOTIFY_FIELD_LOCATION pBuf は、プリンターの新しい物理的な場所 ("ビル 38、会議室 1164" など) を含む null で終わる文字列へのポインターです。 0x06
PRINTER_NOTIFY_FIELD_DEVMODE pBuf は、用紙の向きや解像度などの既定のプリンター データを定義する DEVMODE 構造体へのポインターです。 0x07
PRINTER_NOTIFY_FIELD_SEPFILE pBuf は、区切り文字ページの作成に使用されるファイルの名前を指定する null で終わる文字列へのポインターです。 このページは、プリンターに送信される印刷ジョブを分離するために使用されます。 0x08
PRINTER_NOTIFY_FIELD_PRINT_PROCESSOR pBuf は、プリンターで使用される印刷プロセッサの名前を指定する null で終わる文字列へのポインターです。 0x09
PRINTER_NOTIFY_FIELD_PARAMETERS pBuf は、既定の印刷プロセッサ パラメーターを指定する null で終わる文字列へのポインターです。 0x0A
PRINTER_NOTIFY_FIELD_DATATYPE pBuf は、印刷ジョブの記録に使用されるデータ型を指定する null で終わる文字列へのポインターです。 0x0B
PRINTER_NOTIFY_FIELD_SECURITY_DESCRIPTOR pBuf は、プリンターの SECURITY_DESCRIPTOR 構造体へのポインターです。 セキュリティ記述子がない場合、ポインターは NULL になる 可能性があります。 0x0C
PRINTER_NOTIFY_FIELD_ATTRIBUTES adwData [0] はプリンター属性を指定します。プリンター属性には、次のいずれかの値を指定できます。
PRINTER_ATTRIBUTE_QUEUED
PRINTER_ATTRIBUTE_DIRECT
PRINTER_ATTRIBUTE_DEFAULT
PRINTER_ATTRIBUTE_SHARED
0x0D
PRINTER_NOTIFY_FIELD_PRIORITY adwData [0] は、スプーラーが印刷ジョブのルーティングに使用する優先度値を指定します。 0x0E
PRINTER_NOTIFY_FIELD_DEFAULT_PRIORITY adwData [0] は、各印刷ジョブに割り当てられる既定の優先度値を指定します。 0x0F
PRINTER_NOTIFY_FIELD_START_TIME adwData [0] は、プリンターがジョブを印刷する最も早い時刻を指定します。 (この値は、午前 12 時から経過した分単位で指定されます。 0x10
PRINTER_NOTIFY_FIELD_UNTIL_TIME adwData [0] は、プリンターがジョブを印刷する最新時刻を指定します。 (この値は、午前 12 時から経過した分単位で指定されます。 0x11
PRINTER_NOTIFY_FIELD_STATUS adwData [0] はプリンターの状態を指定します。 使用可能な値の一覧については、 PRINTER_INFO_2 構造体を参照してください。 0x12
PRINTER_NOTIFY_FIELD_STATUS_STRING サポートされていません。 0x13
PRINTER_NOTIFY_FIELD_CJOBS adwData [0] は、プリンターのキューに入っている印刷ジョブの数を指定します。 0x14
PRINTER_NOTIFY_FIELD_AVERAGE_PPM adwData [0] は、プリンターに印刷された 1 分あたりの平均ページ数を指定します。 0x15
PRINTER_NOTIFY_FIELD_TOTAL_PAGES サポートされていません。 0x16
PRINTER_NOTIFY_FIELD_PAGES_PRINTED サポートされていません。 0x17
PRINTER_NOTIFY_FIELD_TOTAL_BYTES サポートされていません。 0x18
PRINTER_NOTIFY_FIELD_BYTES_PRINTED サポートされていません。 0x19
PRINTER_NOTIFY_FIELD_OBJECT_GUID これは、オブジェクト GUID が変更された場合に設定されます。 0x1A
PRINTER_NOTIFY_FIELD_FRIENDLY_NAME これは、プリンター接続の名前が変更された場合に設定されます。 0x1B

Type メンバーがJOB_NOTIFY_TYPEを指定する場合、Field メンバーには次のいずれかの値を指定できます。

フィールド データの種類
JOB_NOTIFY_FIELD_PRINTER_NAME pBuf は、ジョブがスプールされるプリンターの名前を含む null で終わるストリングへのポインターです。 0x00
JOB_NOTIFY_FIELD_MACHINE_NAME pBuf は、印刷ジョブを作成したマシンの名前を指定する null で終わる文字列へのポインターです。 0x01
JOB_NOTIFY_FIELD_PORT_NAME pBuf は、データをプリンターに送信するために使用されるポートを識別する null で終わる文字列へのポインターです。 プリンターが複数のポートに接続されている場合、ポートの名前はコンマで区切られます (例: "LPT1:,LPT2:,LPT3:")。 0x02
JOB_NOTIFY_FIELD_USER_NAME pBuf は、印刷ジョブを送信したユーザーの名前を指定する null で終わる文字列へのポインターです。 0x03
JOB_NOTIFY_FIELD_NOTIFY_NAME pBuf は、null で終わる文字列へのポインターであり、ジョブが印刷されたとき、またはジョブの印刷中にエラーが発生したときに通知を受け取るユーザーの名前を指定します。 0x04
JOB_NOTIFY_FIELD_DATATYPE pBuf は、印刷ジョブの記録に使用されるデータの種類を指定する null で終わる文字列へのポインターです。 0x05
JOB_NOTIFY_FIELD_PRINT_PROCESSOR pBuf は、ジョブの印刷に使用する印刷プロセッサの名前を指定する null で終わる文字列へのポインターです。 0x06
JOB_NOTIFY_FIELD_PARAMETERS pBuf は、印刷プロセッサ パラメーターを指定する null で終わる文字列へのポインターです。 0x07
JOB_NOTIFY_FIELD_DRIVER_NAME pBuf は、印刷ジョブの処理に使用するプリンター ドライバーの名前を指定する null で終わる文字列へのポインターです。 0x08
JOB_NOTIFY_FIELD_DEVMODE pBuf は、プリンター ドライバーのデバイス初期化と環境データを含む DEVMODE 構造体へのポインターです。 0x09
JOB_NOTIFY_FIELD_STATUS adwData [0] はジョブの状態を指定します。 使用可能な値の一覧については、 JOB_INFO_2 構造体を参照してください。 0x0A
JOB_NOTIFY_FIELD_STATUS_STRING pBuf は、印刷ジョブの状態を指定する null で終わる文字列へのポインターです。 0x0B
JOB_NOTIFY_FIELD_SECURITY_DESCRIPTOR サポートされていません。 0x0C
JOB_NOTIFY_FIELD_DOCUMENT pBuf は、印刷ジョブの名前 ("MS-WORD: Review.doc" など) を指定する null で終わる文字列へのポインターです。 0x0D
JOB_NOTIFY_FIELD_PRIORITY adwData [0] はジョブの優先順位を指定します。 0x0E
JOB_NOTIFY_FIELD_POSITION adwData [0] は、印刷キュー内のジョブの位置を指定します。 0x0F
JOB_NOTIFY_FIELD_SUBMITTED pBuf は、ジョブが送信された時刻を指定する SYSTEMTIME 構造体へのポインターです。 0x10
JOB_NOTIFY_FIELD_START_TIME adwData [0] は、ジョブを印刷できる最も早い時刻を指定します。 (この値は、午前 12 時から経過した分単位で指定されます。 0x11
JOB_NOTIFY_FIELD_UNTIL_TIME adwData [0] は、ジョブを印刷できる最新時刻を指定します。 (この値は、午前 12 時から経過した分単位で指定されます。 0x12
JOB_NOTIFY_FIELD_TIME adwData [0] は、ジョブの印刷開始後に経過した合計時間を秒単位で指定します。 0x13
JOB_NOTIFY_FIELD_TOTAL_PAGES adwData [0] は、ジョブのサイズをページ単位で指定します。 0x14
JOB_NOTIFY_FIELD_PAGES_PRINTED adwData [0] は、印刷されたページ数を指定します。 0x15
JOB_NOTIFY_FIELD_TOTAL_BYTES adwData [0] は、ジョブのサイズをバイト単位で指定します。 0x16
JOB_NOTIFY_FIELD_BYTES_PRINTED adwData [0] は、このジョブに出力されたバイト数を指定します。 このフィールドでは、変更通知オブジェクトは、バイトがプリンターに送信されるときに通知されます。 0x17

要件

要件
サポートされている最小のクライアント
Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows 2000 Server [デスクトップ アプリのみ]
ヘッダー
Winspool.h (Windows.h を含む)

関連項目

印刷

印刷スプーラー API 構造体

Devmode

FindNextPrinterChangeNotification

JOB_INFO_2

PRINTER_INFO_2

PRINTER_NOTIFY_INFO

SECURITY_DESCRIPTOR

SYSTEMTIME