繁体   English   中英

从自定义操作设置属性?

[英]Set property from custom action?

我是 wix 的新手,正在尝试执行以下操作:
我正在将我们当前的 MSI 从安装到程序文件(每台机器)转换为安装在本地应用程序数据中(每用户)。
但是,由于这个 MSI 也可以部署到整个组织,并且由于这个部署可以在系统 session 中运行,我需要在安装过程中弄清楚控制台会话的本地应用程序数据路径,因为我不希望我们的应用程序安装在系统session的本地应用程序数据目录中。

我知道通常的解决方案是安排 MSI 在“标准”用户下次登录时安装,但我收到的要求指示我安装 MSI 并在之后同时运行应用程序,无需登录/注销,重启等

所以,我想做的是立即运行一个自定义操作,它将运行我将创建的另一个 exe,这个 exe 将返回控制台会话的本地应用程序数据目录的路径,并在安装程序中使用这个返回值,通过将此值存储在属性中。

从我读到的到目前为止:

  1. 我无法从自定义操作中获取返回值。
  2. 我需要做的是编译一个 c# dll(我主要用 c# 编程),我将在其中定义一个自定义操作,它将包含获取控制台会话的本地应用程序数据目录的逻辑,一旦我有了这个路径,将其存储在 WXS 文件中定义的属性中。

我理解正确吗?
有没有不同的方法来完成我需要的?
go 有任何提示/技巧/文章/示例吗?

谢谢

有一种标准方法可以实现按用户/按机器安装。 您可以只使用WixUI_Advanced模板,即<UIRef Id="WixUI_Advanced" /> 它开箱即用地提供了此功能。 看看官方文档:

https://wixtoolset.org//documentation/manual/v3/wixui/dialog_reference/wixui_advanced.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM