通用列印疑難解答 - 瞭解列印作業的階段
本文提供列印作業如何經歷通用列印的不同元件,以及其狀態如何更新的概觀。
使用者列印 (來自用戶端)
用戶挑選通用列印印表機、選取所需的列印選項,然後按兩下 [列印] 按鈕。 使用者可以從下列任何來源列印 (我們有時將其稱為用戶端):
- 從 Windows OS (電腦、Windows 365、Azure 虛擬桌面等)
- 從網頁瀏覽器應用程式,例如 商務用 OneDrive 瀏覽器中的 Excel。
- 其他廠商或企業營運 (LOB) 應用程式使用 Microsoft Graph API 所開發的應用程式。
- 其他用戶端(如 Mac 等)。
Windows OS
讓我們從 Windows OS 取得體驗的範例。
當使用者在 Windows 上列印之後,以下是進行的步驟:
- 應用程式可以使用其中一個 Windows 標準列印對話方塊(例如記事本)或自己的列印對話框(例如Microsoft Office 應用程式、Adobe Acrobat 等)。 其中一個對話框會將列印作業傳送至 Windows 上執行的 Windows 列印後台處理程式。 針對通用列印,每部印表機都會使用內建的通用列印類別驅動程式。 多任務緩衝處理程式會使用此驅動程式進一步處理作業。
- 如果印表機與其中一個印表機相關聯,且安裝在裝置上,Windows 列印後台處理程式可能會選擇性地叫用印支援應用程式 (PSA)。 PSA 通常是由印表機 OEM 發行,並與其印表機型號相關聯。 PSA 可能會自動安裝在 Windows 上,並連結到印表機。
- Windows 列印後台處理程式會將列印作業(元數據和承載)上傳至通用列印服務。 作業是使用因特網列印通訊協定 (IPP) 透過 HTTPS 傳送。 用於指定印表機的埠會命名為 IPP-GUID。
在雲端中列印作業
當用戶端將列印作業傳送至通用列印服務時,它會執行下列動作:
- 驗證列印作業。 這可確保印表作業的屬性符合印表機所報告的屬性。 驗證失敗的作業會遭到拒絕,並傳回錯誤給用戶端。 成功驗證的作業會儲存在雲端佇列中,而且可在印表機的列印作業下的通用列印入口網站中取得。 在這個階段, 作業狀態 會是
Pending
或Paused
。- 如果印表機已啟用安全發行且作業正在等候,或有第三方雲端應用程式所觸發的工作,則作業可能處於
Paused
狀態。 - 如果印表機沒有安全發行或沒有第三方工作,則會直接進入
Pending
狀態。 否則,只有在作業發行或工作標示為完成之後,才會將狀態從Paused
Pending
變更為 。
- 如果印表機已啟用安全發行且作業正在等候,或有第三方雲端應用程式所觸發的工作,則作業可能處於
- 針對作業
Pending
,通用列印會通知對應的印表機,指出至少有一個列印作業在雲端佇列中等候。 某些印表機(和 通用列印連線程式)會即時接聽這些通知,而其他印表機可能會定期輪詢這類通知(例如每30秒)。
在印表機印表作業
- 當印表機收到通知時,它可能會決定立即處理列印作業或等候(例如,如果印表機已經忙於列印另一個列印作業)。
- 列印機會先要求所有
Pending
列印作業的清單,開始處理作業。 印表機可能會決定逐一處理這些作業,也可以平行處理多個作業。 - 針對作業印表機開始處理,它會先確認作業來宣告作業。 這會通知通用列印,作業現在已鎖定以供特定印表機處理,而列印作業狀態會變更為
Processing
。 - 列印機會下載列印作業元數據和承載。
- 列印機會處理列印承載和列印。
- 注意:在某些情況下,印表機可能會認可作業,但可能會暫時擱置作業。 在這裡期間,印表機可能會在通用印表中將作業狀態更新為
Processing-Stopped
。
- 注意:在某些情況下,印表機可能會認可作業,但可能會暫時擱置作業。 在這裡期間,印表機可能會在通用印表中將作業狀態更新為
- 列印機會將作業更新為下列其中一個「最終」狀態:
Completed
:成功列印作業時。Aborted
:當列印機遇到一些問題且無法列印作業時Canceled
:當印表機可能有顯示主控台時,使用者會看到其擱置的列印作業清單。 他們可能會選取一或全部,並將設為Canceled
。
依 通用列印連線程式 列印作業處理
對於透過 通用列印連線程式 註冊的印表機,Connector 會執行與一般印表機執行相同的步驟。 不過,它會將作業從通用列印服務轉接至實際印表機。
以下是連接器流程的一些差異:
- 通用列印服務會通知連接器
Pending
作業,而不是印表機。 - 通用列印連接器會認可並下載列印作業數據。 取得作業之後,連接器會呼叫 Windows Print API,將作業提交至連接器上的 Windows 後台處理程式。 Windows 多任務緩衝處理器會利用印表機驅動程式來轉譯作業,然後將工作傳送至列印機。
- 若要更新列印工作狀態:
- 列印機會將列印作業狀態傳送至連接器上的 Windows 後台處理程式。
- 連接器會從 Windows 多任務緩衝處理程式輪詢作業狀態。
- 更新作業狀態時,它會在通用列印服務中更新相同。
注意
如果指定的印表機有多個 Pending
作業,連接器會依序處理這些作業(一個接一個)。 處理的工作會顯示為 Processing
,而在相同印表機上的印表工作會等候,且狀態為 Pending
。 跨不同印表機的作業(在同一個連接器上)將會平行處理。