gpt4 book ai didi

cocoa - 如何从我的代码中打开 .dmg 文件?

转载 作者:行者123 更新时间:2023-12-03 17:19:35 25 4
gpt4 key购买 nike

我正在使用 Xamarin.Mac 编写一个 cocoa 应用程序。我已将文件下载到下载文件夹中。现在我想打开我下载的文件。我怎么做 ?FileStream Open(字符串路径,FileMode 模式)不起作用。

最佳答案

DiskImages.framework 是私有(private)的,因此大家只需使用操作系统提供的 hdiutl 来进行挂载、卸载、验证等... .dmg的。

安装.dmg:

System.Diagnostics.Process.Start("/usr/bin/hdiutil", "attach /monodevelop/main/build/MacOSX/MonoDevelop-6.1.0.767.dmg");

卸载文件系统(提供.dmg):

System.Diagnostics.Process.Start("/usr/bin/hdiutil", "detach /Volumes/MonoDevelop");

详细安装信息:

如果您需要有关正在安装的 .dmg 的详细信息,您可以请求 plist 样式的输出,并可以在 Process stdout 上捕获该输出以进行 XML 解析:

System.Diagnostics.Process.Start("/usr/bin/hdiutil", "attach -plist /monodevelop/main/build/MacOSX/MonoDevelop-6.1.0.767.dmg");
<小时/>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>system-entities</key>
<array>
<dict>
<key>content-hint</key>
<string>Apple_HFS</string>
<key>dev-entry</key>
<string>/dev/disk2s1</string>
<key>mount-point</key>
<string>/Volumes/MonoDevelop</string>
<key>potentially-mountable</key>
<true/>
<key>unmapped-content-hint</key>
<string>48465300-0000-11AA-AA11-00306543ECAC</string>
<key>volume-kind</key>
<string>hfs</string>
</dict>
<dict>
<key>content-hint</key>
<string>GUID_partition_scheme</string>
<key>dev-entry</key>
<string>/dev/disk2</string>
<key>potentially-mountable</key>
<false/>
<key>unmapped-content-hint</key>
<string>GUID_partition_scheme</string>
</dict>
</array>
</dict>
</plist>

关于cocoa - 如何从我的代码中打开 .dmg 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37126978/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com