我有C#CE CF代碼在手持設備(Motorola MC3100)上運行,它應該使它所連接的Zebra QL220皮帶打印機打印一些東西(代碼附在本文後面)。爲什麼Zebra QL 220打印機在我與之交談的過程中會關閉?
當我啓動我的應用程序時,打開QL 220(通過底部或頂部的綠色大按鈕,具體取決於您的視角),但打印機在我的代碼執行過程中自行關閉,打印出來(我假設這就是沒有打印的原因)。
如果我對打印機靜音的原因是正確的,我必須做些什麼來使其「On」按鈕變得「粘性」?
我嘗試了QL 220上的藍色按鈕(也是一個滾輪和一張紙從中彈出)的藍色按鈕,但所有這些都是「實時」吐出一些磁帶/打印紙。 「
. . .
using (SerialPort serialPort = new SerialPort())
{
serialPort.BaudRate = 19200;
serialPort.Handshake = Handshake.XOnXOff; // Handshake AKA Flowcontrol?
serialPort.DataBits = 8;
serialPort.Parity = Parity.None;
serialPort.StopBits = StopBits.One;
serialPort.PortName = "COM1:";
serialPort.ReadTimeout = 500;
serialPort.WriteTimeout = 500;
serialPort.StopBits = StopBits.One;
serialPort.Open();
Thread.Sleep(2500); // I don't know why this is needed, or if it really is...
// Try this first:
serialPort.WriteLine("! 0 200 200 210 1");
serialPort.WriteLine("TEXT 4 0 30 40 Bonjour la Monde"); //Hola el Mundo --- Hallo die Welt
serialPort.WriteLine("FORM");
serialPort.WriteLine("PRINT");
// or (if WriteLine does not include a carriage return and line feed):
// serialPort.Write("! 0 200 200 210 1\r\n");
// serialPort.Write("TEXT 4 0 30 40 Bonjour la Monde\r\n"); //Hola el Mundo --- Hallo die Welt
// serialPort.Write("FORM\r\n");
// serialPort.Write("PRINT\r\n");
serialPort.Close();
}
你怎麼知道你甚至連接到它?如果他們沒有被使用,他們通常只會變成ff。注意,你確定XonXoff的設置? – tcarvin
手持設備物理連接到打印機。至於XonXoff設置 - 不,我不確定 - 我還應該嘗試什麼? –
打印機產生約本身的元數據報告顯示「握手:硬件」 我不知道這是什麼對應於以握手枚舉(XONXOFF,無, RequestToSend和RequestToSendXOnXOff)的可能值,但...但是,它現在正在工作,所以我想我已經設置爲(XOnXOff)沒關係... –