IADsPrintQueue interface (iads.h)
The IADsPrintQueue interface represents a printer on a network. It is a dual interface that inherits from IADs. The property methods of this interface enables you to access data about a printer, for example printer model, physical location, and network address.
Use this interface to browse a collection of print jobs in the print queue. To control a printer across a network, use the IADsPrintQueueOperations interface. To obtain a collection of the print jobs, call the IADsPrintQueueOperations::PrintJobs method.
In Windows, a printer, or a print queue, is managed by a host computer. If the path to a print queue is known, bind to it as to any other ADSI objects.
The following Visual Basic code example shows the bind operation.
Dim pq as IADsPrintQueue Set pq = GetObject("WinNT://aMachine/aPrinter")
The following C++ code example shows the bind operation.
IADsPrintQueue *pq; LPWSTR adsPath = L"WinNT://aMachine/aPrinter"; HRESULT hr = ADsGetObject(adsPath, IID_IADsPrintQueue, (void**)&pq);
To enumerate all print queues on a given computer
- Bind to the computer object.
- Determine if the computer contains any "PrintQueue" objects.
- Enumerate all the found printer objects.
The following code example enumerates printers on a given computer.
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
|Minimum supported client||Windows Vista|
|Minimum supported server||Windows Server 2008|