Я, наконец, выяснил how to print transformed XML, не запрашивая пользователя или не показывая окно IE, но теперь мне нужно указать количество копий и, возможно, другие настройки принтера.Как программно изменить настройки принтера с помощью элемента управления WebBrowser?
Есть ли способ программно изменить настройки принтера в элементе управления WebBrowser?
Код в вопросе:
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();
}
Любые проблемы с этим подходом, если пользователи будут заблокированы вниз не-администраторов? Какие ключи реестра мне нужно установить? –
Пока пользователь может изменить настройки в диалоговом окне «Параметры страницы», вы можете редактировать настройки реестра «на лету». Я посмотрю ключи и поставлю их в свой ответ. –
Любой способ изменить имя принтера или количество копий с помощью этого метода? Это то, что мне действительно нужно делать, но ключи реестра только имеют заголовок, нижний колонтитул и поля. Если нет, я пойду дальше и приму ваш ответ и заставит пользователей просто выбрать свой проклятый принтер и количество копий. –