我們試圖與USB HIDDevice進行通信。此設備在Windows中工作正常,我們可以發送報告並使用WriteFile()
和ReadFile()
獲取報告。USBHIDManager HID,getReport()和setReport()在Mac環境下
在Mac上,我們嘗試使用setReoprt()
和getReport()
與設備進行連接。但是getReport()
沒有返回任何數據,但是有錯誤。
應用程序中有什麼問題?
我們試圖與USB HIDDevice進行通信。此設備在Windows中工作正常,我們可以發送報告並使用WriteFile()
和ReadFile()
獲取報告。USBHIDManager HID,getReport()和setReport()在Mac環境下
在Mac上,我們嘗試使用setReoprt()
和getReport()
與設備進行連接。但是getReport()
沒有返回任何數據,但是有錯誤。
應用程序中有什麼問題?
爲了使用異步行爲,必須將使用getAsyncEventSource獲得的事件源添加到運行循環中。
上面的註釋是setReport註釋的一部分。 U可能需要先學習Mac OS中Runloop的runloop機制。
因爲這裏不可能解釋這個機制。以下功能和訂單可能會幫助ü編碼當u熟悉RunLoop(嘗試在谷歌搜索「CFRunLoop」)
CFRunLoopGetCurrent()。
CFRunLoopRun();
CFRunLoopAddSource(CFRunLoopRef rl,CFRunLoopSourceRef source,CFStringRef mode);
CFRunLoopStop(CFRunLoopRef RL);(我通常調用回調方法此功能)
謝謝。 Mydevice描述是http://stackoverflow.com/questions/7834101/no-kernel-file-specified-error-on-kext-mac-environment。這是HID設備(HID管理器概念),所以我嘗試檢索數據使用getReport,我的程序工作正常的鍵盤和鼠標,所以我的疑問是:1)如何發送interrept結束poing 2)如果我發送中斷終點我可以得到數據,(我的東西我的runloope工作正常), –
http://stackoverflow.com/questions/7727363/iohiddevicegetreportwithcallback-function-do-not-work-in-my-cocoa-application –
您可以編輯您的問題,並張貼您所使用的代碼和錯誤消息(S)? – 2011-10-18 23:44:22
GetReport()沒有錯誤消息,也沒有有效的數據。謝謝 –