问题标签 [iokit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
17963 浏览

c++ - 如何创建一个程序来列出 Mac 中的所有 USB 设备?

我对 Mac OS X 操作系统的接触有限,现在我已经开始使用 Xcode 并且正在研究 I/O 套件。我需要在命令行工具下的 Xcode 中创建一个程序,以便列出 Mac 系统中连接的所有 USB 设备。有这方面经验的人,请帮帮我。如果有人可以为我提供示例代码,那么它将非常有用,因为我正在寻找起点。

0 投票
4 回答
9597 浏览

xcode - 如何在 Mac 中获取 USB 设备的设备描述符和配置描述符?

我很少接触 xcode 和 I/Okit 框架。我在 USB 探测器中看到了 USB 设备的设备描述符和配置描述符。在此处输入图像描述

我使用 I/O 套件框架编写了一个 xcode 程序,当我们提供该设备的产品 ID 和供应商 ID 作为输入时,它提供 USB 设备名称作为输出。

}

我需要修改它,以便在提供 USB 设备的供应商和产品 ID 时,我将获得设备描述符和配置描述符(如 USB 探测器中所示)作为输出。

这里我只是举了一个例子,代码可以改变,但输出必须是描述符(至少是设备描述符)。

提前致谢...

0 投票
1 回答
1483 浏览

c++ - 创建 ChargeInhibit 断言 (OS X 10.6.8)

平台 (OS X 10.6.8) - [Macbook Pro - 这很重要,因为我想处理电池处理 - 不适用于台式机]

如果我犯了一个我看不到的基本错误,请原谅我,因为我已经五年或更长时间没有编写过任何 C/C++,而且我没有完全遵循苹果 API 希望你处理它们的方式,所以这就是我的问题。基本上,我希望能够在我的命令下禁止从交流适配器充电,这样我就可以选择是否在笔记本电脑正在使用和插入时为其充电。我找不到任何实用程序这个,所以我起初把它写成硬件级别的东西,不能从软件中改变,但后来我遇到了一些令人鼓舞的事情:

如果您打开终端窗口并运行

你会得到一个断言列表,每个断言都是 0 或 1,表示某个进程是否断言了该断言。其中第一个名为 ChargeInhibit,经过一番挖掘后,我发现这在软件级别上完全符合我的要求。我只需要弄清楚如何断言它。

我从名为SetActive.c 的苹果源文件中的一个文件中复制了一些代码(链接) 我将函数 sendSmartBatteryCommand 复制到我的 XCode 项目中,并花时间链接其他头文件并复制定义,直到我可以正确编译它。这是复制的功能:

当我尝试使用它发送用于充电抑制和流入禁用的断言时,我得到了成功值,但是来自 pmset 的日志没有显示任何更改,我的电池充电/未充电的实际状态也没有。

我还尝试将要查找的服务名称从“AppleSmartBatteryManager”修改为无意义的词,只是为了查看函数是否返回失败,并且确实如此,这表明我正在连接到真正的服务。

关于如何尽可能简单地实现这一目标的任何提示?

顺便说一句,我试图从苹果源站点上的源包重新编译 PowerManagement 项目中的 AppleSmartBatteryManager,但我在 XCode 中的错误比我能处理的要多。我希望尝试以某种方式与现有服务进行交互,这不会让我在我自己的项目中重新编译 AppleSmartBatteryManager 源代码。

编辑:顺便说一句,这是我调用函数的一个例子:

“which”参数的选项在我的头文件的枚举中定义(也从 SetActive.c 复制):

0 投票
1 回答
221 浏览

xcode - Mac 中是否有类似 GetDeviceDescriptorPtr() 的方法?

在 IOUSBDeviceInterface 中有一个函数 GetConfigurationDescriptorPtr,用于获取指向配置描述符的指针。参考链接如下。

http://developer.apple.com/library/mac/#documentation/Darwin/Reference/IOKit/IOUSBLib_h/Classes/IOUSBDeviceInterface/index.html#//apple_ref/doc/com/intfm/IOUSBDeviceInterface/GetConfigurationDescriptorPtr

有没有像 GetDeviceDecriptorPtr 这样的函数来获取指向设备描述符的指针?

提前致谢..

0 投票
2 回答
762 浏览

objective-c - 如何纠正 I/O Kit 中的“架构 x86_64 的未定义符号”问题?

我正在运行 OSX Lion 并希望使用此处引用的 I/O 套件注册睡眠通知。

当我编译代码时,我得到以下Undefined symbols for architecture x86_64符号IOAllowPowerChange和。IORegisterForSystemPowerIONotificationPortGetRunLoopSource

我在Apple的文档中搜索,它们都是公共功能。关于我为什么会遇到这些问题的任何建议?

0 投票
1 回答
844 浏览

objective-c - 为什么静态函数会消除 Xcode 中的未定义符号?

我正在尝试使用 I/O 套件并已正确链接到 I/O 套件。

当我在 I/O 套件中使用函数并且不在静态函数中调用它时,我收到以下错误Undefined symbols for architecture x86_64

这是一个抑制错误的示例

这是一个将导致错误的示例。

关于为什么会发生这种情况的任何建议?

编辑:

以下是确切的错误消息:

0 投票
1 回答
584 浏览

iphone - 使用 MFMessageComposeViewController (iPhone) 创建 SMS 时出现奇怪的日志消息

当我在我的应用程序中创建一条短信时,出现了一些奇怪的日志消息,我不明白。我在网上四处寻找解决方案,但我找不到任何东西。这些是打印的消息:

我该如何解决这些问题?我试图找到一个 IOKit 框架,但似乎没有内置到 Xcode 中。如果我提交我的应用程序,它会因为这些消息而被拒绝吗?

这是我用来创建和显示短信的代码:

我还有一个委托方法,它是:

0 投票
0 回答
324 浏览

objective-c - 在 Lion 上使用 IOKit 进行睡眠显示

我有以下代码假设在 Mac 上休眠显示器。我已经在 Lion 上尝试过,但它似乎没有做任何事情。我通过创建一个带有窗口中的按钮和 IBAction 方法的准系统窗口 Mac 应用程序来测试代码。当按钮被按下时,下面的函数被调用,但是没有任何反应。

关于为什么它不起作用的任何建议?

0 投票
1 回答
949 浏览

cocoa - 使用 Xcode Cocoa 应用程序创建设备驱动程序

如果有人对此有任何想法,请提供一些提示.. 感谢您的重播

0 投票
1 回答
3434 浏览

xcode4 - 使用 Xcode 创建的设备驱动程序不会加载

我已经基于此链接http://developer.apple.com/library/mac/#documentation/Darwin/Conceptual/KEXTConcept/KEXTConceptIOKit/iokit_tutorial.html实现了一个设备驱动程序应用程序

如果我尝试在终端上加载设备($ sudo cp -R MyDriver.kext /tmp),我会收到错误消息:

我的疑问是:1)什么是没有指定内核文件错误(我的应用程序错过了什么)?2)什么是MyDriver.kext 无效;无法解决依赖关系?3)我的捆绑标识符是:
CFBundleIdentifier com.MyCompany.driver.${PRODUCT_NAME:maanu}

非常感谢您的回复。