Share via


CustomActionData 属性

指定安装过程中可由自定义操作计算的附加数据。 自定义操作在安装结束时运行并且不能访问有关安装的信息;每个自定义操作**“CustomActionData”**属性使您得以存储有关可以被自定义操作读取的安装信息。

例如,如果部署项目包括**“Property”属性为 FILESEARCH1 的文件搜索,通过将“CustomActionData”**属性设置为“/MyFile=[FILESEARCH1]”,可以传递文件搜索返回的值。 在自定义操作中,可以查询 MyFile 属性以检索该值。

备注

CustomActionData 属性的格式取决于自定义操作的类型。

  • 对于作为安装组件的自定义操作(ProjectInstaller 类),**“CustomActionData”**属性采用 /name=value 形式。 其中的每个名称都必须是唯一的,并且仅有一个值。 多个值之间必须用一个空格隔开:/name1=value1 /name2=value2。 如果值本身有一个空格,则必须在该值两侧加上引号:/name="a value"。

    使用加括号的语法:/name=[PROPERTYNAME],可以传递 Windows Installer 属性。 对于像**“[TARGETDIR]”**这样返回目录的 Windows Installer 属性,除了加括号外,还必须加引号和尾部反斜杠:/name="[TARGETDIR]\"。

    提示

    为了使自定义操作被视为安装组件,必须将“InstallerClass”属性设置为“true”。 有关更多信息,请参见 RunInstallerAttribute

  • 对于所有其他自定义操作(.exe、.dll 或脚本)没有格式要求。 可以在 CustomActionData 属性中传递任何字符串,因为您必须自己在自定义操作中对其进行分析。

疑难解答

如果自定义操作依赖于客户键入的安装文件夹路径,则您可能会看到 ArgumentException 错误消息。 这可能与无效的目录或 URL 有关。

若要防止出现此错误消息,请用空格替换反斜杠:/name="[TARGETDIR] "。 然后,对该值进行分析,并使用 Combine 方法创建完全限定的路径。

请参见

任务

演练:安装时使用自定义操作显示消息

参考

“自定义操作编辑器”的属性

InstallerClass 属性