OpenPrinter |
Declare Function Api_OpenPrinter& Lib "winspool.drv" Alias "OpenPrinterA" (ByVal pPrinterName$, phPrinter&, pDefault As Any) |
||||||||
Declare Function OpenPrinter Lib "winspool.drv" Alias "OpenPrinterA" (ByVal pPrinterName As String, phPrinter As Long, pDefault As Any) As Long |
|||||||||
指定されたプリンタまたはプリントサーバーを識別するハンドルを取得する。 |
|||||||||
パラメータ
関数から制御が返ると、この変数に、開かれたプリンタオブジェクト、またはプリントサーバーオブジェクトを表すハンドルが返る。 これらの値は、StartDocPrinter 関数を使ってドキュメントを印刷する目的で使われる。
しかし、ドキュメントを開始した後も SetJob 関数を使うと、これらの値を再設定できる。 る。これらの作業を行うには、pPrinterName パラメータにプリントサーバー名を指定し、PRINTER_DEFAULTS 構造体の pDatatype メ ンバと pDevMode メンバを NULL に設定し、DesiredAccess メンバに、SERVER_ALL_ACCESS のようなサーバーアクセスのマスク値を設 定する。返されたハンドルを WaitForPrinterChange 関数へ渡すこともできる。ハンドルを使い終わったときは、ClosePrinter 関数にその
ハンドルを渡して閉じる。
を使う。アクセス権として、次のいずれかを指定する。
WRITE_DAC のような汎用のセキュリティの値
特定の制御アクセス権を認める場合に指定する。 合、OpenPrinter 関数は失敗する。GetLastError 関数を使うと、ERROR_ACCESS_DENIED が返る。 |