Condividi tramite


Risoluzione dei problemi di stampa universale - Informazioni sulle fasi di un processo di stampa

Questo articolo offre una panoramica del modo in cui un processo di stampa passa attraverso diversi componenti di Stampa universale e come viene aggiornato il relativo stato.

Stampa utente (da un client)

Un utente seleziona una stampante di stampa universale, seleziona le opzioni di stampa desiderate e quindi fa clic sul pulsante Stampa. L'utente può stampare da una delle origini seguenti (talvolta si fa riferimento a essi come client):

  • Dal sistema operativo Windows (PC, Windows 365, Desktop virtuale Azure e così via)
  • Da un'applicazione Web browser come OneDrive for Business, Excel nel browser.
  • Applicazioni da parte di altri fornitori o applicazioni line-of-business (LOB) sviluppate usando le API Microsoft Graph.
  • Altri client (ad esempio Mac e così via).

Sistema operativo Windows

Prendiamo un esempio di esperienza dal sistema operativo Windows.

Dopo aver stampato l'utente in Windows, ecco i passaggi da eseguire:

  1. L'applicazione può usare una delle finestre di dialogo di stampa standard di Windows (ad esempio Blocco note) o la propria finestra di dialogo di stampa (ad esempio, Microsoft app Office, Adobe Acrobat e così via). Una di queste finestre di dialogo invierà il processo di stampa allo spooler di Stampa di Windows in esecuzione in Windows. Per Stampa universale, ogni stampante usa il driver di classe Universal Print incorporato. Spooler usa questo driver per elaborare ulteriormente il processo.
    • Lo spooler di Stampa di Windows può eventualmente richiamare un'applicazione di supporto di stampa (PSA) se la stampante è associata a una e viene installata nel dispositivo. Le applicazioni psa vengono in genere pubblicate dagli OEM della stampante e associate ai relativi modelli di stampante. PSA può essere installato automaticamente in Windows e collegato alla stampante.
  2. Lo spooler di Windows Print carica il processo di stampa (metadati e payload) nel servizio stampa universale. Il processo viene inviato tramite Internet Printing Protocol (IPP) su HTTPS. La porta usata per la stampante specificata è denominata IPP-GUID.

Quando un client invia il processo di stampa al servizio stampa universale, esegue le azioni seguenti:

  1. Convalida il processo di stampa. In questo modo, gli attributi del processo di stampa corrispondono agli attributi segnalati dalla stampante. I processi che non soddisfano la convalida vengono rifiutati e viene restituito un errore al client. I processi convalidati vengono archiviati nella coda cloud e sono disponibili nel portale di stampa universale nei processi di stampa della stampante. In questa fase, lo stato del processo sarà Pending o Paused.
    • Il processo potrebbe trovarsi in uno Paused stato se la stampante dispone di una versione sicura abilitata e il processo è in attesa o se è presente un'attività attivata da un'applicazione cloud di terze parti.
    • Se la stampante non dispone di una versione sicura o non ha un'attività di terze parti, passerà direttamente allo Pending stato. In caso contrario, lo stato verrà modificato da Paused a Pending solo dopo il rilascio del processo o l'attività è stata contrassegnata come completata.
  2. Per un Pending processo, Stampa universale notifica alla stampante corrispondente che è presente almeno un processo di stampa in attesa nella coda cloud. Alcune stampanti (e connettore Stampa universale) sono in ascolto di queste notifiche in tempo reale, mentre altre stampanti possono eseguire periodicamente il polling di tali notifiche (ad esempio ogni 30 secondi).
  1. Quando una stampante riceve la notifica, può decidere di elaborare immediatamente il processo di stampa o attendere (ad esempio, se la stampante è già occupata a stampare un altro processo di stampa).
  2. La stampante avvia l'elaborazione del processo richiedendo prima l'elenco di TUTTI i Pending processi di stampa. La stampante può decidere di elaborare questi processi uno per uno o può elaborare più processi in parallelo.
  3. Per avviare l'elaborazione della stampante di processo, prima di tutto richiede il processo riconoscendolo. In questo modo si informa la stampa universale che il processo è ora bloccato per l'elaborazione da parte della stampante specifica e lo stato del processo di stampa cambia in Processing.
  4. La stampante scarica i metadati e il payload del processo di stampa.
  5. La stampante elabora il payload e le stampe di stampa.
    • Nota: in alcuni casi, la stampante può confermare il processo, ma potrebbe mettere temporaneamente in attesa il processo. Durante questo periodo, la stampante può aggiornare lo stato del processo a Processing-Stopped in Stampa universale.
  6. La stampante aggiorna il processo a uno degli stati "finali" seguenti:
    • Completed: quando il processo viene stampato correttamente.
    • Aborted: quando le stampanti hanno dovuto affrontare alcuni problemi e non è stato in grado di stampare il processo
    • Canceled: quando una stampante può avere una console di visualizzazione, gli utenti visualizzano l'elenco dei processi di stampa in sospeso. Possono selezionare uno o tutti e impostare come Canceled.

Per le stampanti registrate tramite connettore Stampa universale, Connector esegue gli stessi passaggi eseguiti da una stampante tipica. Tuttavia, inoltra il processo dal servizio stampa universale alla stampante effettiva.

Ecco alcune differenze nel flusso per un connettore:

  • Il servizio stampa universale invia una notifica al connettore per Pending i processi anziché per la stampante.
  • Universal Print Connector riconosce e scarica i dati del processo di stampa. Dopo aver ottenuto il processo, Connector chiama le API di stampa di Windows per inviare il processo allo spooler di Windows nel connettore. Lo spooler di Windows sfrutta il driver della stampante per eseguire il rendering del processo e quindi il processo viene inviato alla stampante.
  • Per aggiornare lo stato del processo di stampa:
    • La stampante invia lo stato del processo di stampa allo spooler di Windows nel connettore.
    • Il connettore esegue il polling dello stato del processo dallo spooler di Windows.
    • Quando lo stato del processo viene aggiornato, lo stesso viene aggiornato nel servizio stampa universale.

Nota

Se una determinata stampante ha più Pending processi, Il connettore elabora i processi in modo seriale (uno per uno). Il processo elaborato verrà visualizzato come Processing, mentre i processi di stampa dopo che nella stessa stampante saranno in attesa e avranno lo stato .Pending I processi tra stampanti diverse (nello stesso connettore) verranno elaborati in parallelo.