当前 C# POS.NET 打印问题:
PrintNormal()
打印到 Epson TM-T88IV 时抛出异常 = '未初始化'
CheckHealth
= '未初始化' '未初始化' 异常
使用 POS for .NET 1.12 和 Epson OPOS ADK for .NET (v1.11.9) 服务对象成功打开、声明和设置 PosPrinter 的 DeviceEnabled-true
在此 PrintNormal() 导致引发“未初始化”异常后,向打印机发送任何内容的问题。Epson OPOS ADK 附带的 CheckHealth Utility 会导致完全相同的错误。使用 PrintNormal(PrinterStation.Receipt 时,异常是“未安装指定的工作站。”
打印机使用直接并行打印机打印正常打印
我们怎么能不抛出带有消息的豁免 - '它没有初始化'?
void K8POSPrint()
{
/// <summary>
/// PosPrinter object
/// </summary>
PosPrinter m_Printer = null;
try
{
//Use a Logical Device Name which has been set on the SetupPOS.
string strLogicalName = "PosPrinter";
try
{
//Create PosExplorer
PosExplorer posExplorer = new PosExplorer();
DeviceInfo deviceInfo = null;
try
{
// Device Info is not null when the printer has the logical name
deviceInfo = posExplorer.GetDevice(DeviceType.PosPrinter, strLogicalName);
m_Printer = (PosPrinter)posExplorer.CreateInstance(deviceInfo);
}
catch (Exception ExDevice)
{
}
//Open the device
m_Printer.Open();
//Get the exclusive control right for the opened device. Then the device is disable from other application.
m_Printer.Claim(1000);
//Enable the device.
m_Printer.DeviceEnabled = true;
// ////CheckHealth.
//m_Printer.CheckHealth(Microsoft.PointOfService.HealthCheckLevel.Interactive);
// //As using the PrintNormal method, send strings to a printer, and print it [\n] is the standard code for starting a new line.
/// Current Issue Next Line thows an exception - 'It is not initialized'
m_Printer.PrintNormal(PrinterStation.Receipt, "Hey Now OPOS for .NET\n");
// the next line would throw the exception 'The specified station is not mounted.'
// m_Printer.PrintNormal(PrinterStation.Slip,"Hey Now Slip OPOS.NET\n");
}
catch (PosControlException)
{
}
}
catch (Exception ex)
{
}
}
附加信息:尝试在 pos 打印机上打印时安装的程序有:
1. 安装 APD4 打印机驱动程序 Epson TI88IV
APD_412EWM.exe
https://www.epsonexpert.com/ee/techRes/index.htm?ProductId=570
在这组之后在控制面板打印机中,我可以选择打印机的属性并成功打印到打印机的测试。
2. 安装 Microsoft POS.NET 1.12
POSfor.NET.msi
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=eaae202a-0fcc-406a-8fde-35713d7841ca
3. 安装爱普生 OPOS ADK v2。 67
ADK267ER4.exe
https://www.epsonexpert.com/ee/appDev/appDevOPOS.htm
4. 安装 EPSON OPOS ADK for .NET 1.11.8
OPOSN 1 11 18.exe
https://www.epsonexpert.com/ee/appDev/appDevOPOS.htm
5. 安装的 OPOS 公共控制对象 1.13.001
OPOS_CCOs_1.13.001.msi
http://monroecs.com/oposccos_current.htm
6. SetupPOS - 添加设备 &逻辑名称
7. Check Health 仍然抛出错误 It is not initialized OPOS_E_ILLEGAL 10007 (0x00002717)