OS X上的无代码kext

时间:2013-01-13 11:21:27

标签: xcode iokit darwin kernel-extension

好的我正在开发一个uController项目(指针设备),我正在尝试编写一个用户空间驱动程序IOkit.framework

使用idProduct和idVendor我可以得到IOUSBInterfaceInterface300 obj

问题是当我尝试

  

kr = (*intf)->USBInterfaceOpen(intf);

它失败了kIOReturnExclusiveAccess,很可能是因为HID经理已经使用独占访问权限打开了设备。

这里说无代码kext可以阻止HID管理器接管设备

Reading and writing to USB (HID) interrupt endpoints on Mac

我使用idVendoridProduct创建了一个kext,并使用kextload加载它。 我从kextload

返回“已成功加载”

但不知怎的,我仍然无法打开界面? 我做错了什么?

我通过创建文件名Info.plist(与调整了idProduct和idVendor的帖子相同的内容)创建了kext,并将其放在名为MyUSBDeviceTest.kext的文件夹中

然后将所有者更改为root:wheel 然后将kext复制到/System/Library/Extensions然后

sudo kextload -vt /System/Library/Extensions/MyUSBDeviceTest.kext

我尝试重新启动并重新连接设备,但我不能从HID系统中取出接口

0 个答案:

没有答案