2013-06-25 42 views
0

我需要能夠從斑馬打印機獲得輸出時,我給它一個命令。 在工具箱中,我發送「!U1 getvar」apl「」,它將命令發送到打印機,然後將輸出寫入控制檯。 我已成功地設法將該命令轉換爲字節並傳輸給打印機。但是,當我嘗試從打印機讀取時,我得到一個空流。從斑馬打印機獲取字節流輸出

+0

我之前下載了LinkOS並且有iMz320可用,但是不能再親自玩一兩個星期了。你有沒有試過聯繫你的Zebra代表?聽起來像一個愚蠢的問題,但有時他們的工程師可以幫助。 – Dan

回答

1

Zebra提供了一個SDK來幫助與其打印機進行通信。您可以在iOS SDK中找到命令,例如Connection對象上的「sendAndWaitForResponse」,它應該按照您的要求進行操作:http://www.zebra.com/us/en/products-services/software/link-os/link-os-sdk.html

通常,Zebra打印機支持TCP連接,所以沒有理由不能寫入打印機並讀取響應。在讀取響應之前,可能需要在發送出站命令後短暫等待,因爲網絡條件會延遲響應。如果您包含您的代碼,我們可能會更好地提供幫助。

作爲最後一點 - 確保在ZPL字符串的末尾添加一個換行符(0x0A)。如果使用新的行字符終止,打印機將只識別SGD命令(!U1命令)!

+0

我找不到連接對象的「sendAndWaitForResponse」方法 – user2402616

+1

糟糕 - 這可能只存在於其Java SDK中。你可能想嘗試我的第二個建議,並打電話給'寫',然後休息一小段時間等待迴應。再次 - 記住在數據的末尾添加一行(0x0A)! –

+0

我有換行符,我終於得到了期望的輸出..但它很奇怪。工具箱給我以下結果收到:149字節 apl。 apl.enable:無,選項:無 apl.framework_version:1.0 apl.version:無 apl.o. apl.o.graphics_byte_width:72,選項:0-255 – user2402616