我試圖從代碼打印到網絡打印機,但打印對話框中的網絡打印機狀態爲Access denied, unable to connect
,打印按鈕被禁用。但是如果從另一個應用程序打印,我可以打印到該打印機。而且,如果我從打印對話框中選擇「打印到PDF」,那也可以正常工作。我只是無法打印到網絡打印機。我有某種權限問題?在PrintDialog中拒絕訪問網絡打印機
if (File.Exists(previewDocument))
File.Delete(previewDocument);
PrintDialog printD = new PrintDialog();
printD.PageRangeSelection = PageRangeSelection.AllPages;
printD.UserPageRangeEnabled = true;
if (printD.ShowDialog() ?? false)
{
XpsDocument xpsDoc = new XpsDocument(previewDocument, FileAccess.ReadWrite);
XpsDocumentWriter xpsWriter = XpsDocument.CreateXpsDocumentWriter(xpsDoc);
xpsWriter.Write(((IDocumentPaginatorSource)messageFlow).DocumentPaginator);
FixedDocumentSequence fixedDocSeq = xpsDoc.GetFixedDocumentSequence();
printD.PrintDocument(fixedDocSeq.DocumentPaginator, "Hello!");
}
您可能會檢查您的應用程序嘗試運行的上下文。如果您的應用程序在不允許打印的特權下運行,您可能會冒充應用程序上下文。 – Nair
嘗試以管理員身份運行您的應用程序。 – Hozikimaru
你是從程序的內部版本還是從調試版本中獲得這個錯誤? – Hank