gpt4 book ai didi

c# - 如何创建 Wix 类型 35 自定义操作

转载 作者:太空宇宙 更新时间:2023-11-03 23:14:26 25 4
gpt4 key购买 nike

我一直在寻找一种解决方案,以编程方式覆盖我的应用程序功能的目录路径。

我发现我需要一个 type-35 自定义操作 ( https://msdn.microsoft.com/en-us/library/windows/desktop/aa368093(v=vs.85).aspx )

我在互联网上搜索了一段时间,但找不到如何在 C# 中创建此类自定义操作。

我当前的自定义操作如下所示:

<CustomAction Id="CheckForSynergyInstallation"
Return="check"
Execute="immediate"
BinaryKey="Real.CustomActions"
DllEntry="GetVersionInformation" Directory="SYNERGY_FEATURE_FOLDER" />

它的 C# 代码如下:

 var synergyFolder = new FileInfo(exactSynergyVersionConfigurationFile).Directory.FullName;
log.Info($"Synergy Folder set to {synergyFolder}");

session["SYNERGY_FEATURE_FOLDER"] = synergyFolder;

最佳答案

类型 35 自定义操作调用 MsiSetTargetPath更改目录的位置。如果您已有基于 DTF 的自定义操作,则可以调用 session.SetTargetPath 而不是设置该属性。

如果您还没有基于代码的自定义操作,您可以使用 CustomAction element使用稍微少一些的参数来产生类型 35 的 Action 。即省略 BinaryKey 和 DllEntry:

<CustomAction Id=... Return=... Execute=...
Directory="SYNERGY_FEATURE_FOLDER" Value="location"/>

关于c# - 如何创建 Wix 类型 35 自定义操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37741620/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com