3

我们销售的服务包含一个打包在 MSI 中的 .NET 应用程序,该应用程序与 Web 服务相结合。

我们有很多客户想要以他们的品牌/徽标等转售我们的应用程序。我们真正需要做的就是更改任务栏图标、桌面图标、开始菜单图标,可能是这些图标下的描述,以及我们关于/支持细节。通过这种方式,我们可以在 10 个品牌下销售相同的应用程序,希望有更多的客户。

我们可以在它们处于活动状态时使用配置变量更改任务栏图标,关于/支持,但不能更改开始菜单/桌面图标或图标下的文本,因为它们在安装时放置。

我们不想为每个经销商分叉我们的代码(这可能会发生 10 次),但想要一种我们可以安装在不同品牌下的方式,或者在安装后 - 将所有内容更改为他们的设置。请记住,我们的应用程序当前安装在 Win2k、winxp、vista、7、嵌入式上。

看了之后 - 似乎没有一个好的方法可以做到这一点......任何想法都会受到赞赏。

干杯斯科特

4

2 回答 2

1

这是一个有趣的问题。您可能会考虑使用“仅资源程序集”,其中包含每个命名程序集的每个相关客户端的特定图形和字符串资源。然后,您将构建所有这些,但对于特定客户端,仅将它们的程序集包含在安装程序中,并使用 app.config 指定在 ResourceManager 构造函数中使用的程序集名称。

于 2012-09-27T03:17:52.460 回答
0

这取决于您准备 MSI 包的方式。如果您使用 WiX,则使用预处理器应该可以解决问题。

另一种选择是使用 MSI 转换,其中 MSI 包中的数据可以在安装时通过转换更改

http://msdn.microsoft.com/en-us/library/windows/desktop/aa367447(v=vs.85).aspx

于 2012-09-27T08:46:17.513 回答