J'ai finalement compris how to print transformed XML sans inviter l'utilisateur ou en montrant une fenêtre IE, mais maintenant je dois spécifier un certain nombre de copies et éventuellement d'autres paramètres de l'imprimante.Comment modifier les paramètres de l'imprimante avec le contrôle WebBrowser?
Existe-t-il un moyen de modifier par programme les paramètres de l'imprimante sur un contrôle WebBrowser?
Le code en question:
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();
}
Tout problème avec cette approche si les utilisateurs sont bloqués vers le bas non-Admins? Quelles clés de registre dois-je définir? –
Tant que l'utilisateur est en mesure de modifier les paramètres dans la boîte de dialogue Mise en page, vous pouvez modifier les paramètres du registre à la volée. Je vais chercher les clés et les mettre dans ma réponse. –
Toute façon de changer le nom de l'imprimante ou le nombre de copies via cette méthode? C'est ce que j'ai vraiment besoin de faire, mais les clés de registre n'ont vraiment que l'en-tête, le pied de page et les marges. Sinon, je vais aller de l'avant et accepter votre réponse et forcer les utilisateurs à choisir leur imprimante sacrément et le nombre de copies. –