我在Visual Studio中有代码,当我从Visual Studio中运行它时,我可以打印任何问题。一旦将代码放入IIS,我就无法打印到条形码打印机。打印机位于办公室的另一台机器上。
我尝试将AppPool放入打印机并授予打印机权限,但另一台计算机无法识别AppPool。打印机正在共享,我可以在办公室中的任何计算机上进行打印。
else if (e.CommandName == "Print")
{
int rowIndex = Convert.ToInt32(e.CommandArgument);
int id =
Convert.ToInt32(grdList.DataKeys[rowIndex].Values[0]);
try
{
outerboxbc o = new outerboxbc();
o = oDL.Get_Outerboxbc(id);
PrintDocument pd = new PrintDocument();
pd.PrintPage += new
PrintPageEventHandler(pd_PrintPage);
this.ob_Barcode.Text =
o.barcode.bc_Barcode.ToString();
// pd.PrintPage += (print, args) =>
pd_PrintPage(items, id, args);
// Set the printer name.
// pd.PrinterSettings.PrinterName = "\\NS5\hpoffice
pd.PrinterSettings.PrinterName =
"\\\\ALPHAPC08\\ZDesigner GK420d";
pd.Print();
}
catch (Exception ex)
{
Response.Write("Error: " + ex.ToString());
}
}
}
catch (Exception ex)
{
Console.Write("Error: " + ex.Message);
}
}
void pd_PrintPage(object print, PrintPageEventArgs ev)
{
long de_RecordID = Convert.ToInt32(this.de_RecordID.Value);
cDelivery d = new cDelivery();
d = oDL.get_cDelivery(de_RecordID);
Font printFont = new Font("3 of 9 Barcode", 24);
Font printFont1 = new Font("Times New Roman", 12, FontStyle.Bold);
SolidBrush br = new SolidBrush(Color.Black);
ev.Graphics.DrawString("*" + this.ob_Barcode.Text + "*",
printFont, br, 10, 85);
ev.Graphics.DrawString(d.de_ProjectNumber, printFont1, br, 110,
150);
}
以上是我使用的代码。它在Visual Studio中可以正常工作,并且只有当我将其作为IIS的实时网站放置时,打印才行不通。