问题标签 [diskarbitration]

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 投票
4 回答
1325 浏览

macos - 在 osx 上检测卷的出现/消失

我想在用户插入 USB 密钥、添加外部磁盘和挂载磁盘映像时更新存储设备列表。IOKit 的 IOServiceAddInterestNotification 看起来像是要走的路,但是在 kIOMediaClass 中注册一般兴趣的明显用途只会给你通知卸载卷,然后只是有时。

这样做的正确方法是什么?

0 投票
3 回答
1920 浏览

macos - 区分 HFS+ 和 HFS 标准卷

IOKit 和 DiskArbitration 框架可以告诉我很多关于 Mac 上挂载卷的信息,但它们似乎无法区分 HFS+ 和 HFS 标准卷。

IOKit/DA 键Content,对于 HFS 标准卷和 HFS+ 卷,始终是 Apple_HFS 和 hfs DAVolumeKindDAMediaContent

diskutil 和 DiskUtility.app可以区分,但我似乎没有被 Apple 开源。

ps statfs(2) 不区分

0 投票
2 回答
2005 浏览

cocoa - 检测何时卸载可移动存储

我正在开发一个应用程序,该应用程序应该检测当可移动存储被卸载或从 USB 中强行拔出时发生的事件。我怎样才能收到这些事件?

我已经看到NSWorkspace了顺利卸载设备的第一种可能性,但是这个类有卸载设备之类的方法-unmountAndEjectDeviceAtPath:。有人可以指出一些检测未安装卷的示例代码吗?

0 投票
2 回答
135 浏览

macos - 可可相当于diskEvt/kEventClassVolume?

我们的 UI 中有一个卷的下拉菜单,我想在挂载新磁盘时更新它。在经典时代,这将涉及观看diskEvt事件。在 Carbon 中,我认为这是kEventClassVolume. 可可等价物是什么?

(指向 Apple 文档的指针可以满足这个问题。我一直找不到任何东西!)

0 投票
4 回答
599 浏览

macos - 挂载磁盘映像时来自磁盘仲裁的双重回调

我在使用 DiskArbitration 框架来捕获我注册的磁盘映像安装时遇到问题 DARegisterDiskMountApprovalCallback。问题是每次挂载磁盘映像时,都会调用两次回调。为什么会这样,我该如何解决?

0 投票
2 回答
2077 浏览

objective-c - 如何防止在 Mac OS X 上的操作过程中弹出磁盘?

我有一个长期运行的任务,它在安装的 USB 驱动器上执行一系列文件操作,我想防止用户在发生这种情况时从 Finder(或其他地方)弹出驱动器。有一个取消按钮,可以随时结束任务。

我曾假设在任务期间保持挂载卷上的文件句柄打开可以解决问题,但它没有奏效。

这是我尝试过的(删除了错误处理):

关于我可以做些什么来确保防止卷弹出的任何想法?

0 投票
1 回答
469 浏览

iphone - 列出 Cocoa 中所有连接的 iDevices

我想为我的备份应用程序实现一种备份功能,但由于我无法在设备上执行此操作,因此我必须在 Mac 上执行此操作。我将如何在计算机上列出连接的 iDevices(主要是 iPhone 和 iPod Touch)?我想我可以枚举所有连接的 USB 设备的大量数组并检查具有 Apple 供应商代码的设备,但我知道有一些更好的方法。

我还假设我必须为此使用 IOKit,但我从未使用过它,所以我很感激一些示例代码和有用的提示,可以为我指明正确的方向。然后,我需要获取设备名称,并访问设备上的文件,但我想在我弄清楚设备之后这会很简单。

0 投票
1 回答
396 浏览

macos - 检测可弹出设备何时(未)插入 OS X

我想知道如何在大容量存储设备插入(或拔出)到 Mac 时收到通知。

0 投票
1 回答
1187 浏览

objective-c - Cocoa 应用程序获取 /dev/disk0s1 的大小

如何在 Cocoa 应用程序中通过设备名称(例如 /dev/disk0s1)获取分区的大小(以字节为单位)?也许我应该以某种方式使用磁盘仲裁框架?

0 投票
3 回答
7239 浏览

macos - 以编程方式检索 OS X 磁盘分区 UUID

我有一个分区的路径。如何在不使用终端命令的情况下以编程方式检索该分区的 UUID?一个例子会更有帮助。