Sto lavorando a un componente aggiuntivo Outlook C# VSTO 3.0 in cui è necessario acquisire l'evento Stampa (quando l'utente seleziona l'opzione Stampa da Outlook per stampare un'e-mail). Non sono riuscito a trovare alcuna API nel modello a oggetti di Outlook che fornisce accesso a questo evento. C'è un modo per realizzare questo?Come acquisire l'evento di stampa nel componente aggiuntivo di Outlook?
risposta
Se si vuole intercettare il comando di stampa nella vista dietro le quinte si può dare un'occhiata al seguente articolo:
"Non è possibile ignorare questi comandi dal XML interfaccia utente personalizzata markup o utilizzando il modello a oggetti L'utilizzo dell'evento DocumentBeforeSave è un'alternativa, ma l'utilizzo di tale funzionalità non modifica la funzionalità dei singoli comandi visualizzati nella galleria Cambia tipo di file nel Backstage. Una soluzione migliore potrebbe essere nascondere l'interfaccia utente incorporata e ricostruirla completamente con i comandi personalizzati. "
(quanto sopra riguarda File -> Salva come .. ma è praticamente lo stesso per File -> Stampa).
Quindi in pratica è necessario aggiungere il proprio comando al posto del. Se non si sta parlando del Backstage ma di alcuni vecchi Outlook in cui il comando di stampa si trova nella voce di menu/barra multifunzione/comando, è anche possibile prendere un guardare a questo articolo AddIn Express (penso che funzionerà senza i loro prodotti):
l'idea è la stessa - a trovare il Id o IdMso della voce di tasto/del menu di interesse e creare nuovo per arrivare agli eventi.
Spero che questo aiuti.
perché si desidera acquisire la stampa? –
Per registrare alcuni metadati relativi al documento che si sta stampando. – Kapil