【发布时间】:2013-04-17 07:00:32
【问题描述】:
我有一个 MSI 包,除了程序组件外,它还安装了一个大型数据库文件。此文件不包含在包中,但在 msi 文件旁边提供。到目前为止,此设置没有问题。现在数据库增长到大于 2 GB 的大小。这会在安装时引发错误(在 Win7 机器上测试):
“写入文件时出错:[数据库文件的路径]。请检查您是否有该文件夹的权限。”
搜索互联网显示 Windows Installer 似乎对大于 2GB 的文件有问题。作为解决方案,建议不要将文件包含在 MSI 中,而是将其与 MSI 一起解压缩。这就是我们已经在做的事情。因此建议的解决方案不起作用。
有没有办法使用 Windows Installer 安装大于 2 GB 的文件?这个限制对我来说似乎有点过时了。
P.S.:如果有帮助,安装是使用 WIX 构建的,但任何关于在 msi 数据库本身中修改内容的提示都非常感谢
【问题讨论】:
-
另一种选择是使用脚本生成架构,然后使用 bcp 导入数据。我为我的一个安装程序执行此操作,对于在 SqlServer 上部署时约为 1GB 的数据库,生成的 msi 约为 60MB。诚然,在 cab 压缩设置为高的情况下,构建需要大约 5 小时,但如果您使用 mszip,它会快得多,但不会那么小(我们只是每晚构建,所以这不是问题)。将涉及大量迁移工作,但它将解决您达到的 2GB 限制(除非您有 1 x 2GB 表!)
标签: wix windows-installer large-files