SHInvokePrinterCommandW 関数 (shellapi.h)

プリンター オブジェクトでコマンドを実行します。

メモ この関数は、Windows Vista の時点で非推奨になりました。 その代わりに、 IContextMenu または ShellExecute を使用してプリンターで動詞を呼び出することをお勧めします。
 

構文

BOOL SHInvokePrinterCommandW(
  [in, optional] HWND    hwnd,
                 UINT    uAction,
  [in]           LPCWSTR lpBuf1,
  [in, optional] LPCWSTR lpBuf2,
                 BOOL    fModal
);

パラメーター

[in, optional] hwnd

型: HWND

操作中に作成されたウィンドウまたはダイアログ ボックスの親ウィンドウのハンドル。

uAction

型: UINT

実行するプリンター操作の種類。 次のいずれかの値です。

PRINTACTION_OPEN (0)

0x0。 lpBuf1 で指定されたプリンターを開きます。 lpBuf2 パラメーターは無視されます。

PRINTACTION_PROPERTIES (1)

0x1。 lpBuf1 で指定されたプリンターのプロパティ ページを表示します。 lpBuf2 パラメーターは NULL にすることも、表示する特定のプロパティ シートの名前を名前または数値で指定することもできます。 lpBuf2 の上位 WORD が 0 以外の場合、このパラメーターは、開くシートの名前を含むバッファーへのポインターであると見なされます。 それ以外の場合、 lpBuf2 は開くプロパティ シートの 0 から始まるインデックスと見なされます。

PRINTACTION_NETINSTALL (2)

0x2。 lpBuf1 で指定されたネットワーク プリンターをインストールします。 lpBuf2 パラメーターは無視されます。

0x3。 lpBuf1 で指定されたネットワーク プリンターへのショートカットを作成します。 lpBuf2 パラメーターは、ショートカットを作成するフォルダーのドライブとパスを指定します。 ネットワーク プリンターは、ローカル コンピューターに既にインストールされている必要があります。

PRINTACTION_TESTPAGE (4)

0x4。 lpBuf1 で指定されたプリンターにテスト ページを印刷します。 lpBuf2 パラメーターは無視されます。

PRINTACTION_OPENNETPRN (5)

0x5。 lpBuf1 で指定されたネットワーク プリンターを開きます。 lpBuf2 パラメーターは無視されます。

PRINTACTION_DOCUMENTDEFAULTS (6)

0x6。 lpBuf1 で指定されたプリンターの既定のドキュメント プロパティを表示します。 lpBuf2 パラメーターは無視されます。

PRINTACTION_SERVERPROPERTIES (7)

0x7。 lpBuf1 で指定されたプリンター サーバーのプロパティを表示します。 lpBuf2 パラメーターは無視されます。

[in] lpBuf1

型: LPCTSTR

プリンター コマンドの追加情報を含む null で終わる文字列へのポインター。 このパラメーターに含まれる情報は、 uAction の値によって異なります。

[in, optional] lpBuf2

型: LPCTSTR

プリンター コマンドの追加情報を含む null で終わる文字列へのポインター。 このパラメーターに含まれる情報は、 uAction の値によって異なります。

fModal

種類: BOOL

コマンド が完了するまで SHInvokePrinterCommand が返されないように指定する場合は TRUE。 FALSE コマンド が初期化されるとすぐに関数がを返す必要がある場合。

戻り値

種類: BOOL

成功した場合は TRUE を 返します。それ以外の場合は FALSE

注釈

lpBuf1 でプリンター名を指定する場合は、ローカル プリンターの名前またはサーバーの名前、およびネットワーク プリンターの共有名を指定できます。 ネットワーク プリンター名を指定する場合は、次の形式で名前を指定する必要があります。

"\\<server><shared printer name>"

この関数は、 シェル バージョン 4.71 以降で実装されています。 以前のシェル バージョンとの下位互換性を維持するために、この関数を明示的に使用しないでください。 代わりに、 LoadLibrary 関数と GetProcAddress 関数を使用して関数アドレスを取得する必要があります。

注意

shellapi.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SHInvokePrinterCommand を定義します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional、Windows XP [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー shellapi.h
Library Shell32.lib
[DLL] Shell32.dll (バージョン 4.71 以降)