Ho finalmente trovato how to print transformed XML senza chiedere all'utente o mostrare una finestra di IE, ma ora ho bisogno di specificare un numero di copie e possibilmente altre impostazioni della stampante.Come posso modificare in modo programmatico le impostazioni della stampante con il controllo WebBrowser?
C'è un modo per modificare in modo programmatico le impostazioni della stampante su un controllo WebBrowser?
Il codice in questione:
private static void PrintReport(string reportFilename)
{
WebBrowser browser = new WebBrowser();
browser.DocumentCompleted += browser_DocumentCompleted;
browser.Navigate(reportFilename);
}
private static void browser_DocumentCompleted
(object sender, WebBrowserDocumentCompletedEventArgs e)
{
WebBrowser browser = sender as WebBrowser;
if (null == browser)
{
return;
}
browser.Print();
browser.Dispose();
}
Qualsiasi problema con questo approccio se gli utenti sono bloccati in giù non-amministratori? Quali chiavi di registro devo impostare? –
Fintanto che l'utente è in grado di modificare le impostazioni nella finestra di dialogo Imposta pagina, è possibile modificare al volo le impostazioni del registro. Cercherò le chiavi e le inserirò nella mia risposta. –
Un modo per modificare il nome o il numero di copie della stampante tramite tale metodo? Questo è quello che devo davvero fare, ma le chiavi di registro hanno solo intestazione, piè di pagina e margini. In caso contrario, vado avanti e accetto la tua risposta e costringo gli utenti a scegliere solo la loro dannata stampante e il numero di copie. –