1

TM U220 レシートプリンターを使用しています。また、レシート印刷アプリケーションの開発には、Epson OPOS ADK for .Net と Microsoft PosFor.Net を使用しています。

レシートが空、レシートがほぼ空などのステータス情報をデバイスから取得しようとしています。しかし、プリンターに領収書がなくても、常に成功のステータスを取得しています。

PosPrinter m_Printer; // Name of printer instance.
//Initialisation of printer.
//

m_Printer.Open();
m_Printer.Claim();
m_Printer.Enabled = true;

if(m_Printer.RecEmpty || m_Printer.RecNearEmpty)
{
//Show the status message.
}

上記のコードは、この状況をテストするために使用されました。プリンターの受信状態に関係なく、常にこれらのブール値を false として取得しています。

これについて私を助けてください。これらのステータス情報を取得するために、さらにアクションを実行する必要があるかどうか.POS

4

2 に答える 2

1

m_printer オブジェクトのイベント ハンドラを追加してみてください。このブロックに try catch を配置して、何が起こっているかを通知できるようにします。

于 2014-05-26T05:07:51.763 に答える
0

Epson OPOS は、最新バージョン (2.80) でもこれを変更しました。TM-U220 モデルの場合、次を使用します。

PowerNotify を有効にする

m_Printer.PowerNotify = 1

次に、プリンターの電源状態を取得します

Select Case m_Printer.PowerState
    Case 2000       'DESCONOCIDO, NO TIENE LA CAPACIDAD, NO HACER NADA
    Case 2001       'EN LINEA
    Case 2002, 2003, 2004    'APAGADA 'FUERA DE LINEA 'APAGADA
    msgbox "check printer"
End Select

これは、TM-U950 モデルでは機能しません。

于 2015-12-04T02:22:28.057 に答える