Windows 7 64 ビット プラットフォーム用の C# を使用して .Net WPF アプリケーションを作成しています。私のアプリケーションは、USB 経由で接続された Zebra KR403 プリンタと通信する必要があります。私の質問は非常に基本的なものかもしれませんが、この投稿が .Net でこのプリンターを初めて使用する他の人に役立つことを願っています。
1. どの SDK を使用すればよいですか? プロジェクトに .dll を追加して使用するのと同じくらい簡単ですか? Windows CE SDK を使用してみましたが、ZSDK_API.dll が ZebraUsb.dll をロードしようとすると、BadImageFormatException が発生します。これは通常、dll が別のプラットフォーム用にコンパイルされたことを意味します。
2. 印刷には SDK を使用する必要がありますか?それとも、通常の .Net 印刷ライブラリを使用する必要がありますか? 2つのオプションの利点は何ですか? たとえば、印刷に .Net ライブラリを使用する場合でも、ZBI (プリンターとの通信に使用される言語) を使用する必要がありますか?
3. プリンタのステータス (用紙切れ、メディアがロードされていないなど) を取得するにはどうすればよいですか? Windows CE または Mobile での方法を説明しているガイド (リンクを削除する必要がありました。2 つ以上のリンクを投稿するには評判が高くない) を見つけましたが、Windows 7 (通常のデスクトップ バージョン) の同等のものを見つけることができません。
誰かがこれらの質問で私を助けることができれば、私はそれを大いに感謝し、他の人が使用できるように私の最終的な解決策 (または上記を実行するために必要なコア コード) をここに投稿します。
よろしくお願いします。
アップデート:
ここで、USB 経由でプリンターと直接通信できるコードを見つけました: http://danielezanoli.blogspot.com/2010/06/usb-communications-with-zebra-printers.html
~HQES コマンドの結果を説明している KR403 プリンターのハードウェア インテグレーター ガイドも見つけました。 km.zebra.com/kb/index?page=answeropen&type=open&searchid=1363543831914&answerid=16777218&iqaction=6&url=https%3A%2F%2Fsupport.zebra.com%2Fcpws%2Fdocs%2Fcrawl%2FUG_Kiosk%2FKR403_UG.pdf&highlightinfo=12583129,8815, 8825
上記のライブラリを使用して USB 経由で、または .Net の SerialPort クラスを使用してシリアル ポート経由で ~HQES コマンドをプリンターに送信できるようになりました。次に、上記のハードウェア インテグレーター ガイドを使用して結果を解釈し、プリンターのステータスを確認します。これは簡単にできるので、現時点では SDK を移植しようとはしません。