gpt4 book ai didi

wix - 为 Visual Studio 11 注册加载项、项目模板和项模板

转载 作者:行者123 更新时间:2023-12-04 18:48:31 25 4
gpt4 key购买 nike

我一直在使用 Wix 3.5 和 WixVSExtension 来安装 Visual Studio 2010、Visual C# 2010 Express 和 Visual Web Developer 2010 Express 的项目项模板。我现在想添加对 Visual Studio 11 Beta 的支持。

我添加了注册表搜索和自定义操作来查找 VS11 安装文件夹,但是,在指定目录和组件结构时,我收到如下编译错误:

错误 LGHT0204:ICE30:目标文件“ewa5nwrn.zip|BasicApplication.zip”由 LFN 系统上的两个不同组件安装在“[TARGETDIR]\CSharp\”中:“VS2010CSharpProjectTemplates”和“VS11CSharpProjectTemplates”。这会破坏组件引用计数。

我有这个目录结构:

<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="VS2010_PROJECTTEMPLATES_DIR">
<Directory Id="VS2010_PROJECTTEMPLATES_CSHARP_DIR" Name="CSharp">
</Directory>
</Directory>
<Directory Id="VS11_PROJECTTEMPLATES_DIR">
<Directory Id="VS11_PROJECTTEMPLATES_CSHARP_DIR" Name="CSharp">
</Directory>
</Directory>
</Directory>

请注意,我在 TARGETDIR 中有 VS2010_PROJECTTEMPLATES_DIR 和 VS11_PROJECTTEMPLATES_DIR。错误消息显示它们被忽略。

组件定义如下:
<DirectoryRef Id="VS2010_PROJECTTEMPLATES_CSHARP_DIR">
<Component Id="VS2010CSharpProjectTemplates" Guid="{0976A222-8243-40F2-81AB-84D8F1771840}" Transitive="yes">
<File Id="VS2010BasicApplication" Source="BasicApplication.zip" />
</Component>
</DirectoryRef>

<DirectoryRef Id="VS11_PROJECTTEMPLATES_CSHARP_DIR">
<Component Id="VS11CSharpProjectTemplates" Guid="{A70428F1-AE26-4B07-9F58-D67587B44657}" Transitive="yes">
<File Id="VS11BasicApplication" Source="BasicApplication.zip" />
</Component>
</DirectoryRef>

是否可以将相同的文件安装到由属性指定的两个不同目录中?

提前致谢,
阿尔马达

最佳答案

我没有任何源代码可以分享,但我可以大致告诉你我过去是如何做到的。

我们决定将 zip 文件“安装”到我们的主应用程序目录中 Integration文件夹,以便即使在安装时未安装 VS2008 和/或 VS2010,文件也始终可用。然后,我使用了 Util 扩展中存在的一组内置属性和几个自定义 RegLocator 搜索来定义一组与 devenv.exe 和 ItemTemplate、ProjectTemplates 以及我们在 .NET 中需要的其他目录的位置相关的属性。然后我在 CopyFile 元素中使用了这些属性,以便 MSI 可以在 Integration 中复制这些文件。文件夹根据需要和适当的实际 VS 目录。最后我使用 WiX QuietExec 自定义操作调用 Devenv/setup 向 VS 注册内容。我还使用了 ProgressText 元素( ActionText 表)来使 UI 看起来不错,而这一切都在发生,因为 VS devenv 可能需要一段时间。

关于wix - 为 Visual Studio 11 注册加载项、项目模板和项模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9978167/

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