次の方法で共有


IADsPrintQueue インターフェイス (iads.h)

IADsPrintQueue インターフェイスは、ネットワーク上のプリンターを表します。 これは、 IAD から継承するデュアル インターフェイスです。 このインターフェイスのプロパティ メソッドを使用すると、プリンター モデル、物理的な場所、ネットワーク アドレスなど、プリンターに関するデータにアクセスできます。

継承

IADsPrintQueue インターフェイスは、IDispatchIAD を継承しますIADsPrintQueue には、次の種類のメンバーもあります。

解説

このインターフェイスを使用して、印刷キュー内の印刷ジョブのコレクションを参照します。 ネットワーク経由でプリンターを制御するには、 IADsPrintQueueOperations インターフェイスを 使用します。 印刷ジョブのコレクションを取得するには、 IADsPrintQueueOperations::P rintJobs メソッドを 呼び出します。

Windows では、プリンターまたは印刷キューはホスト コンピューターによって管理されます。 印刷キューへのパスがわかっている場合は、そのパスを他の ADSI オブジェクトと同じようにバインドします。

次の Visual Basic コード例は、バインド操作を示しています。

Dim pq as IADsPrintQueue
Set pq = GetObject("WinNT://aMachine/aPrinter")

次の C++ コード例は、バインド操作を示しています。

IADsPrintQueue *pq;
LPWSTR adsPath = L"WinNT://aMachine/aPrinter";
HRESULT hr = ADsGetObject(adsPath,
                          IID_IADsPrintQueue,
                          (void**)&pq);

特定のコンピューター上のすべての印刷キューを列挙するには

  1. コンピューター オブジェクトにバインドします。
  2. コンピューターに "PrintQueue" オブジェクトが含まれているかどうかを確認します。
  3. 見つかったすべてのプリンター オブジェクトを列挙します。

次のコード例では、特定のコンピューター上のプリンターを列挙します。

Dim cont As IADsContainer
Dim pq As IADsPrintQueue

On Error GoTo Cleanup
 
' Bind to the computer object
Set cont = GetObject("WinNT://fabrikam1,computer")

cont.Filter = Array("PrintQueue")

For Each p In cont
   Set pq = GetObject(p.ADsPath)
   MsgBox pq.Name & " is a " & pq.Model
Next p

Cleanup:
    If (Err.Number<>0) Then
        MsgBox("An error has occurred. " & Err.Number)
    End If
    Set cont = Nothing
    Set pq = Nothing

要件

   
サポートされている最小のクライアント Windows Vista
サポートされている最小のサーバー Windows Server 2008
対象プラットフォーム Windows
ヘッダー iads.h

関連項目

Iad

IADsPrintQueue プロパティ メソッド

IADsPrintQueueOperations

IADsPrintQueueOperations::P rintJobs

IDispatch