SetPort 関数

SetPort 関数は、プリンター ポートに関連付けられている状態を設定します。

構文

BOOL SetPort(
  _In_ LPTSTR pName,
  _In_ LPTSTR pPortName,
  _In_ DWORD  dwLevel,
  _In_ LPBYTE pPortInfo
);

パラメーター

pName [in]

ポートが接続されているプリンター サーバーの名前を指定する、0 で終わる文字列へのポインター。 ポートがローカル コンピューター上にある場合は、このパラメーターを NULL に設定します。

pPortName [in]

プリンター ポートの名前を指定する 0 で終わる文字列へのポインター。

dwLevel [in]

pPortInfo パラメーターによって指される構造体の型を指定します。

この値は、 PORT_INFO_3 データ構造に対応する 3 である必要があります。

pPortInfo [in]

設定するポートステータス情報を含む PORT_INFO_3 構造体へのポインター。

戻り値

関数が成功した場合、戻り値は 0 以外の値になります。

関数が失敗した場合は、0 を返します。

解説

Note

これはブロック関数または同期関数であり、すぐには返されない可能性があります。 この関数が返す速度は、ネットワーク状態、プリント サーバーの構成、プリンター ドライバーの実装要因など、アプリケーションの作成時に予測が困難な実行時の要因によって異なります。 ユーザー インターフェイスとの対話を管理するスレッドからこの関数を呼び出すと、アプリケーションが応答しなくなる可能性があります。

SetPort 関数の呼び出し元は、管理者として実行されている必要があります。 さらに、呼び出し元がポート モニターまたは言語モニターの場合は、SetPort を呼び出す前に偽装を停止するために RevertToSelf を呼び出す必要があります。

SetPort を呼び出すプログラムはすべて、ポートが接続されているサーバーにSERVER_ACCESS_ADMINISTERアクセスできる必要があります。

プリンター ポートの状態値を重大度の値PORT_STATUS_TYPE_ERROR設定すると、印刷スプーラーはポートへのジョブの送信を停止します。 印刷スプーラーは 、SetPort の別の呼び出しによってポートの状態がクリアされると、ポートへのジョブの送信を再開します。

必要条件

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

関連項目

印刷

印刷スプーラー API 関数

PORT_INFO_3