<Return[G]><Top>

GetPrinterDataEx

Declare Function Api_GetPrinterData& Lib "winspool.drv" Alias "GetPrinterDataA" (ByVal hPrinter&, ByVal pValueName$, pType&, pData As Byte, ByVal nSize&, pcbNeeded&)

Declare Function GetPrinterData Lib "winspool.drv" Alias "GetPrinterDataA" (ByVal hPrinter As Long, ByVal pValueName As String, pType As Long, pData As Byte, ByVal nSize As Long, pcbNeeded As Long) As Long

SetPrinterDataEx 関数または SetPrinterData 関数によって格納された、指定プリンタまたはプリントサーバーの構成データを取得する。

パラメータ
hPrinter
    構成データを取得するプリンタまたはプリントサーバーを識別するハンドルを指定する。このハンドルは、OpenPrinter 関数を使って取得す

    る。
pKeyName
    取得する値が入っているキーの名前を表す NULL で終わる文字列へのポインタを指定する。1 つ以上のサブキーを持つパスを指定する場

    合は、区切り文字に円記号(\)を使う。
    hPrinter にプリンタのハンドルを指定し、pKeyName に NULL または空の文字列を指定すると、戻り値が

    ERROR_INVALID_PARAMETER になる。
    hPrinter にプリントサーバーのハンドルを指定する場合は、pKeyName に必ず NULL を指定する。
pValueName
    取得するデータを識別する NULL で終わる文字列へのポインタを指定する。
    プリンタの場合、この文字列は pKeyName キーの下にある値の名前である。
    プリントサーバーの場合、この文字列は解説に示す定義済み文字列の 1 つである。
pType
    値に格納されたデータの型を受け取る変数へのポインタ。SetPrinterDataEx 関数を呼び出してデータを格納するときに指定した型が返る。  

    情報が不要なときは、このパラメータに NULL を指定できる。
pData
    構成データを受け取るバッファへのポインタを指定する。
nSize
    pData が指すバッファのサイズをバイト単位で指定する。
pcbNeeded
    構成データのサイズ(バイト数)を受け取る変数へのポインタを指定する。nSize で指定したバッファのサイズが小さい場合は、戻り値が

    ERROR_MORE_DATA となり、pcbNeeded が必要なバッファサイズを示す。

戻り値
    関数が成功すると、ERROR_SUCCESS が返る。
    関数が失敗すると、エラー値が返る。

解説
    GetPrinterDataEx 関数は、SetPrinterDataEx 関数または SetPrinterData 関数で設定したプリンタ構成データを取得する。
    hPrinter がプリントサーバーを識別するハンドルの場合は、pValueName に次の定義済み値のいずれかを指定する。

    SPLREG_DEFAULT_SPOOL_DIRECTORY

DefaultSpoolDirectory

    SPLREG_PORT_THREAD_PRIORITY_DEFAULT

PortThreadPriorityDefault

    SPLREG_PORT_THREAD_PRIORITY

PortThreadPriority

    SPLREG_SCHEDULER_THREAD_PRIORITY_DEFAULT

SchedulerThreadPriorityDefault

    SPLREG_SCHEDULER_THREAD_PRIORITY

SchedulerThreadPriority

    SPLREG_BEEP_ENABLED

BeepEnabled

    SPLREG_NET_POPUP

NetPopup

    SPLREG_EVENT_LOG

EventLog

    SPLREG_MAJOR_VERSION

MajorVersion

    SPLREG_MINOR_VERSION

MinorVersion

    SPLREG_ARCHITECTURE

Architecture

    パラメータ pKeyName を "PrinterDriverData" に設定した GetPrinterDataEx 関数は、GetPrinterData 関数と同じ働きをする。