【问题标题】:C/C++ Libraries for reading from Universal Disk Format devices or files [closed]用于从通用磁盘格式设备或文件读取的 C/C++ 库 [关闭]
【发布时间】:2009-09-24 11:32:45
【问题描述】:

是否有任何优秀的免费 C/C++ 库可以从具有 UDF 和 ISO9660 等文件系统的常见设备中读取并提取文件/元数据等?

到目前为止,我能找到的只有 GNUs libcdio,它很有希望,还有一些 "Magic UDF",它有如此多的点击量,我很反感,在 Google 中推出了其他结果,而且价格看起来非常极端标记。

跨平台支持更可取(当然是个人偏好),但不幸的是,Windows 兼容性是一项要求。许可证限制越少越好,我还没有调查 libcdio 的 GPLv3 许可证的兼容性。

请注意,这个问题仍然悬而未决,如果有人找到这样的图书馆,我会接受另一个答案。

【问题讨论】:

    标签: c++ c user-defined-functions iso9660


    【解决方案1】:

    经过广泛调查,我最终推出了自己的解决方案来执行我需要的 UDF 操作。我无法打开源代码,总共大约有 800 行 C++。然而,这里有几个链接让我通过:

    几句警告:以前实施 ISO9660/ECMA-119 的经验对我有很大帮助。了解块设备如何操作以及如何与操作系统交互是有帮助的。围绕物理布局和会话分离的信息有些神秘且难以理解。

    【讨论】:

    • 是否有可能将您的阅读器作为图书馆发布?
    • @Dilawar:对不起,没有。这是给以前的雇主的,我早就离开了。
    【解决方案2】:

    【讨论】:

    • 我在那里找不到任何相关的东西,至少不是通过搜索文本“ISO”、“UDF”或“9660”。
    • 免费,但与 UDF、ISO 或任何其他图像格式无关。
    【解决方案3】:

    这方面有很多开源库,但可靠性是个问题。

    在 Windows 上,您可以使用 Image Mastering API。它带有 Window SDK ,可在 XP 和 Vista 上运行

    http://msdn.microsoft.com/en-us/library/aa364806%28VS.85%29.aspx

    【讨论】:

    • 看起来 IMAPI 仅用于刻录和创建图像。它不会打开现有的图像或设备。
    【解决方案4】:

    7-Zip 支持从 UDF 和 ISO 磁盘映像中提取文件,并且大部分是 LGPL 许可的。具体来说,UDF 实现代码似乎在CPP/7zip/Archive/Udf/UdfIn.cpp 中。

    【讨论】:

    • 7z 程序似乎利用了 COM,但库中没有实际的 UDF 实现代码。
    • @Anacrolix:它使用的 COM 组件是 7-Zip 源代码树的一部分。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-05
    • 2017-09-23
    • 2010-09-10
    • 2011-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多