我想調用特定的打印機來打印我的WPF應用程序。 我有三個打印機 假設 的Printer1用於酒吧的賬單打印 PRINTER2廚房賬單打印 Printer3爲客戶賬單打印 打印機名稱已經保存在數據庫中,在打印過程中,我從DB 得到一個打印機名稱,並希望從特定的打印機打印在創建打印服務器對象,而不是defaul打印機 這裏是我的代碼調用特定的打印機來打印C#WPF
var v = new PrinterDAL().GetPrinterSettings();
try
{
System.Threading.Thread thread = new System.Threading.Thread(new
System.Threading.ThreadStart(
delegate()
{
gridPrint.Dispatcher.Invoke(DispatcherPriority.Normal,
new Action(
delegate()
{
PrintDialog printDialog = new PrintDialog();
printDialog.PrintQueue = new PrintQueue(
new PrintServer(@"\\" + v.BarPrinter), "");
printDialog.PrintVisual(gridPrint, "");
this.Close();
}
));
}
));
thread.Start();
}
catch (Exception ex)
{
Xceed.Wpf.Toolkit.MessageBox.Show(ex.Message, "", MessageBoxButton.OK,
MessageBoxImage.Error);
}
我得到一個例外,從這個代碼
「發生異常Win32錯誤:打印機名稱無效「。
鑑於我們不介意讀者 - v.BarPrinter包含什麼? –
它包含打印機的名稱,這是此處的錯誤。你能打印出名字並檢查.NET爲什麼不能與打印機通信? – Legoless
如果答案是正確的。請檢查它是否被接受。其他人可以更快地找到答案。 – jlvaquero