1

ドキュメントには、次のコマンドがあります。

command mergAccessoryRead pNameAndProtocol,pLength,pCallcackHandler
command mergAccessoryWrite pNameAndProtocol,pData,pCallcackHandler

それらはプリンターでのみ機能しますか、それとも一般的に使用できますか? 例?

更新 2:mergAccessoryOpenSession で行き詰まっています。この場合、セッションは開かれていないと思います。

これが私の現在のコードです。

global pNameAndProtocol
global pData
on preopenstack

   put "xxxx" into pNameAndProtocol
   put "get xxxx" into pData
end preopenstack

command xxxx

   answer pNameAndProtocol
   answer pData   
   printDocket  


end xxxx

on printDocket
   try
      mergAccessoryOpenSession "xxxx","sessionOpen"
      answer "mergAccessoryOpenSession is called..."
   catch someError
      answer "An error on printDocket " &&someError
   end try
end printDocket

on sessionOpen pNameAndProtocol   
   try
      mergAccessoryWrite "xxxx","get xxxx","writeCompleted"
       answer "mergAccessoryWrite is called..."
   catch someError 
      answer "An error on sessionOpen " &&someError
   end try   
end sessionOpen

on writeCompleted pNameAndProtocol   
   try
      mergAccessoryRead pNameAndProtocol,0,"readCompleted"
      answer "mergAccessoryRead is called..."
   catch someError 
      answer "An error on writeCompleted " &&someError
   end try

end writeCompleted

on readCompleted pNameAndProtocol,pData   
      answer "Completed..."   
end readCompleted
4

1 に答える 1

1

これらは、あらゆる Bluetooth または接続されたハードウェア アクセサリで動作します。メーカーからプロトコルのドキュメントを入手するだけです。デモは、ミニ Bluetooth プリンターに印刷されます。

on printDocket
   mergAccessoryOpenSession "p25i|com.bluebamboo.p25i","sessionOpen"
end printDocket

on sessionOpen pNameAndProtocol
   mergAccessoryWrite pNameAndProtocol,"UfwàD"&fld "write","writeCompleted"
end sessionOpen

on writeCompleted pNameAndProtocol
   mergAccessoryRead pNameAndProtocol,0,"readCompleted"
end writeCompleted

on readCompleted pNameAndProtocol,pData
   if byte 5 of pData = numToByte(3) and byte 6 of pData = numToByte(0) then
      answer "print complete"
      mergAccessoryCloseSession pName
   end if
end readCompleted

編集

かなり長いサポート インシデントの後、ここで問題を解決しました。回答ダイアログが開いているときに外部からのコールバックがキューに入れられず、失われて実行されないようです。したがって、外部からのコールバックが予想される場合は、応答ダイアログを使用しないでください。エンジン フォーラムでこのスレッドを開いて、解決策があるかどうかを確認しました: http://forums.runrev.com/viewtopic.php?f=66&t=15602

于 2013-06-05T20:13:24.403 に答える