IADsPrintJob 属性方法
IADsPrintJob 接口的属性方法获取或设置下表中所述的属性。 有关详细信息,请参阅 Interface 属性方法。
属性
-
描述
-
-
访问类型:读/写
-
脚本数据类型: BSTR
-
// C++ method syntax HRESULT get_Description( [out] BSTR* pbstrDescription ); HRESULT put_Description( [in] BSTR bstrDescription );
打印作业的说明。
-
-
HostPrintQueue
-
-
访问类型:只读
-
脚本数据类型: BSTR
-
// C++ method syntax HRESULT get_HostPrintQueue( [out] BSTR* pbstrHostPrintQueue );
处理打印作业的打印队列的 ADsPath 字符串。
-
-
Notify
-
-
访问类型:读/写
-
脚本数据类型: BSTR
-
// C++ method syntax HRESULT get_Notify( [out] BSTR* pbstrNotify ); HRESULT put_Notify( [in] BSTR bstrNotify );
完成作业时要通知的用户。
-
-
NotifyPath
-
-
访问类型:读/写
-
脚本数据类型: BSTR
-
// C++ method syntax HRESULT get_NotifyPath( [out] BSTR* pbstrNotifyPath ); HRESULT put_NotifyPath( [in] BSTR bstrNotifyPath );
完成打印作业时要通知的用户对象的 ADsPath 字符串。
-
-
优先级
-
-
访问类型:读/写
-
脚本数据类型: LONG
-
// C++ method syntax HRESULT get_Priority( [out] LONG* plPriority ); HRESULT put_Priority( [in] LONG lPriority );
打印作业的优先级。
-
-
大小
-
-
访问类型:只读
-
脚本数据类型: LONG
-
// C++ method syntax HRESULT get_Size( [out] LONG* plSize );
打印作业的大小(以字节为单位)。
-
-
StartTime
-
-
访问类型:读/写
-
脚本数据类型: DATE
-
// C++ method syntax HRESULT get_StartTime( [out] DATE* pdateStartTime ); HRESULT put_StartTime( [in] DATE dateStartTime );
最早应启动打印作业的时间。
-
-
TimeSubmitted
-
-
访问类型:只读
-
脚本数据类型: DATE
-
// C++ method syntax HRESULT get_TimeSubmitted( [out] DATE* pdateTimeSubmitted );
作业提交到队列的时间。
-
-
TotalPages
-
-
访问类型:只读
-
脚本数据类型: LONG
-
// C++ method syntax HRESULT get_TotalPages( [out] LONG* plTotalPages );
打印作业中的页总数。
-
-
UntilTime
-
-
访问类型:读/写
-
脚本数据类型: DATE
-
// C++ method syntax HRESULT get_UntilTime( [out] DATE* pdateUntilTime );
打印作业应启动的最近时间。
-
-
用户
-
-
访问类型:只读
-
脚本数据类型: BSTR
-
// C++ method syntax HRESULT get_User( [out] BSTR* pbstrUser );
提交打印作业的用户的名称。
-
-
UserPath
-
-
访问类型:只读
-
脚本数据类型: BSTR
-
// C++ method syntax HRESULT get_UserPath( [out] BSTR* pbstrUserPath );
提交此打印作业的用户对象的 ADsPath 字符串。
-
示例
下面的代码示例演示如何处理打印作业对象的属性。
Dim pqo As IADsPrintQueueOperations
Dim pj As IADsPrintJob
On Error GoTo Cleanup
Set pqo = GetObject("WinNT://aMachine/aPrinter")
For Each pj In pqo.PrintJobs
MsgBox "Host Printer: " & pj.HostPrintQueue
MsgBox "Job description: " & pj.Description
MsgBox "job requester: " & pj.User
Next
Cleanup:
If (Err.Number<>0) Then
MsgBox("An error has occurred. " & Err.Number)
End If
Set pqo = Nothing
Set pj = Nothing
下面的代码示例演示如何处理打印作业对象的属性。
IADsPrintQueueOperations *pqo = NULL;
IADsPrintJob *pJob = NULL;
HRESULT hr = S_OK;
BSTR bstr = NULL;
VARIANT var;
ULONG lFetch = 0;
IDispatch *pDisp = NULL;
IADsCollection *pColl = NULL;
IUnknown *pUnk = NULL;
LPWSTR adsPath =L"WinNT://aMachine/aPrinter";
VariantInit(&var);
hr = ADsGetObject(adsPath,
IID_IADsPrintQueueOperations,
(void**)&pqo);
if(FAILED(hr)){goto Cleanup;}
hr = pqo->PrintJobs(&pColl);
// Enumerate print jobs. Code omitted.
hr = pColl->get__NewEnum(&pUnk);
if(FAILED(hr)){goto Cleanup;}
IEnumVARIANT *pEnum;
hr = pUnk->QueryInterface(IID_IEnumVARIANT,(void**)&pEnum);
if(FAILED(hr)){goto Cleanup;}
// Now Enumerate.
hr = pEnum->Next(1, &var, &lFetch);
if(FAILED(hr)){goto Cleanup;}
while(hr == S_OK)
{
if (lFetch == 1)
{
pDisp = V_DISPATCH(&var);
pDisp->QueryInterface(IID_IADsPrintJob, (void**)&pJob);
pJob->get_HostPrintQueue(&bstr);
printf("HostPrintQueue: %S\n",bstr);
SysFreeString(bstr);
pJob->get_Description(&bstr);
printf("Print job name: %S\n",bstr);
SysFreeString(bstr);
pJob->get_User(&bstr);
printf("Requester: %S\n",bstr);
SysFreeString(bstr);
pJob->Release();
}
pDisp->Release();
VariantClear(&var);
hr = pEnum->Next(1, &var, &lFetch);
};
Cleanup:
if(pEnum) pEnum->Release();
if(pUnk) pUnk->Release();
if(pColl) pColl->Release();
if(pqo) pqo->Release();
要求
要求 | 值 |
---|---|
最低受支持的客户端 |
Windows Vista |
最低受支持的服务器 |
Windows Server 2008 |
标头 |
|
DLL |
|
IID |
IID_IADsPrintJob定义为 32FB6780-1ED0-11CF-A988-00AA006BC149 |