2011-04-08 36 views
2

在安装过程中,我需要从二进制数据中提取一个文本文件并将其放在TempFolder中,以便它可以被我不控制的dll所使用。它需要通过文本的文件名进行处理。WIX提取二进制表数据到TempFolder

我想我可以使用一个简单的自定义操作来调用xcopy来复制数据,但是如何识别二进制表的内容呢?

其次,customaction支持各种操作,但我没有看到任何明显的东西只是将二进制项放入TempFolder。

任何想法?

回答

2

没有什么内置于MSI或WiX来做到这一点。您可以正常安装文件并使用[#fileId]格式化语法引用其路径。

+0

我忘了提及我需要这个“文件”的DLL在运行安装customaction。因此它不能被“安装” – 2011-04-08 15:04:24

+0

只要自定义动作延迟并在InstallFiles标准动作之后运行,它就可以。 – 2011-04-08 15:35:18

+0

它不能。这是一个需要在安装过程中尽早运行的自定义EULA对话框。 我可以通过自定义操作来访问msi数据库吗?提取二进制内容并自己写?这对我来说将是一个新的领域,但是,为什么呢?只是指出一个例子。 – 2011-04-08 15:44:25