【问题标题】:Extract ISO using vbscript使用 vbscript 提取 ISO
【发布时间】:2013-03-21 15:40:01
【问题描述】:

今天的问题是这样的:

我需要使用 VBScript 为 Windows 更新提取 ISO 映像文件。使用 VBScript 的原因是因为一切都在独立系统上,我试图通过制作脚本来自动化这个过程。

该 ISO 文件将位于 CD/DVD 上,通过 D:

如果有可能并且任何人都可以帮助我,那就太棒了!

虽然,如果不可能,是否可以使用标准的 Windows 命令行,使用批处理文件来完成?

【问题讨论】:

  • 不知道 vbscript 是否可以做到这一点(对不起),但如果你确定使用 7zip,你可以用批处理文件做到这一点。
  • 为什么会有人将 ISO 文件作为 ISO 文件刻录到光盘上? ISO未压缩。相反,ISO 文件会增加开销并最终大于其内容的总和。使用Windows API 提取 ISO 文件很麻烦。为什么不直接将修补程序以原生 .msi 格式刻录到光盘上?
  • 因为我们必须从一台连接到 Internet 的计算机上获取更新到未连接到 Internet 的独立服务器上,并且我们不能使用 CD/DVD 以外的任何东西把它们移过来。此外,我们不能只将它们以原生 .msi 和 .exe 形式移动到 CD/DVD 上,因为它们来自的服务器上必须有一个原始文件,用于文档。
  • 这仍然不能真正解释为什么您坚持将 ISO 文件作为常规文件刻录到 CD 上。 Windows 更新通常不通过 ISO 部署。因此,应该通过维护 .msi 文件的存档来满足您为自己设置的“它们来自的服务器上的原始文件,用于文档”条件。如果您继续坚持让自己更难完成这项任务,那么我们只能说,我们祝您好运,我希望您在弄清楚如何提取 ISO 后考虑与我们分享您的代码使用 VBScript。
  • 我被误导了。 CD/DVD 是 ISO,而不是将 ISO 作为常规文件保存。感谢您的 cmets 和回复。

标签: vbscript batch-file iso-image


【解决方案1】:

如果您的服务器运行的是 Windows Server 2012 或 Windows 8 并安装了 PowerShell,您可以使用 PowerShell 到 mount your ISO image 作为驱动器,对内容执行您需要的操作,然后卸载。要在不需要用户输入的情况下自动安装,您可以在 Microsoft 的 Mount-DiskImage TechNet Article 中找到 Mount-DiskImage 的命令行开关。

我不确定哪个版本的 PowerShell 开始包含 Mount-DiskImage cmdlet。它在我安装了 PowerShell v2.0 的 Win 7 计算机上似乎不可用。

【讨论】:

    【解决方案2】:

    VBScript 不提供提取 ISO 图像的功能。正如@rojo 在他的评论中已经说过的那样:你为什么要首先在 CD 上将 ISO 映像刻录为文件?这样做你不会得到任何东西。更合适的程序是:

    • 从映像创建 CD(如果您只需要该映像中的文件)。这样您就可以使用脚本轻松访问驱动器 D: 上的文件。
    • 从 ISO 中提取文件并将它们刻录到 CD 上(如果要添加其他文件)。访问同上。
    • 从 ISO 中提取文件并将它们打包到 Zip 存档中(如果 CD 上的空间有限)。然后,您可以从驱动器 D 上的存档中提取文件:像这样:

      Set sa  = CreateObject("Shell.Application")
      Set zip = sa.NameSpace("D:\your.zip")
      Set dst = sa.NameSpace("C:\destination\folder")
      
      For Each f In zip.Items
        dst.CopyHere(f)
      Next
      

      请注意,CopyHere 是异步的,因此它会立即返回,但您可能需要等待一段时间才能完成提取。

    【讨论】:

      【解决方案3】:

      我只知道你可以使用iso工具来提取这种文件。像 Poweriso、magiciso 和 WinISO。 并希望该工具对您有所帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-12-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多