Installation C#部署在安装上保留文件
我已经使用VisualStudio创建了一个安装和部署项目,并安装了安装程序。 安装安装程序后,它会复制一些文件(XML),这些文件在使用应用程序时是以编程方式配置的。 现在,如果用户再次重新安装此设置,我需要询问用户是否需要覆盖或保留这些配置的文件 你知道如何做到这一点吗 谢谢和问候, 弗兰查找Windows Installer 简而言之,假设您引用的这些XML文件是未版本化的文本文件,MSI将比较创建日期和修改日期,并且不会替换您所说的以编程方式更新的XML文件(安装后时间)Installation C#部署在安装上保留文件,installation,windows-installer,Installation,Windows Installer,我已经使用VisualStudio创建了一个安装和部署项目,并安装了安装程序。 安装安装程序后,它会复制一些文件(XML),这些文件在使用应用程序时是以编程方式配置的。 现在,如果用户再次重新安装此设置,我需要询问用户是否需要覆盖或保留这些配置的文件 你知道如何做到这一点吗 谢谢和问候, 弗兰查找Windows Installer 简而言之,假设您引用的这些XML文件是未版本化的文本文件,MSI将比较创建日期和修改日期,并且不会替换您所说的以编程方式更新的XML文件(安装后时间) 我建议您需要考
我建议您需要考虑几个其他变量,以确保事情按您的预期工作:以及属性。
查看Windows安装程序。
简而言之,假设您引用的这些XML文件是未版本化的文本文件,MSI将比较创建日期和修改日期,并且不会替换您所说的以编程方式更新的XML文件(安装后时间)我会建议你需要考虑的其他变量,以确保事情按你预期的那样工作:以及属性。
< P>我发现,接近这种情况的最佳方法是在应用程序中实现“保存更改”逻辑,而不是通过安装程序。由于所有逻辑都嵌入到主EXE文件中,因此这可以避免使设置复杂化,并对配置过程产生更好的控制。这意味着您可以逐步完成该过程,并以正常的“开发方式”对其进行调试 要实现这一点,您可以将“基本配置”文件安装到只读位置,例如- %ProgramFiles%\MyCompany\MyApp\MyConfig**
- HKLM\Software\MyCompany\MyApp\Version=2.0.0
- HKCU\Software\MyCompany\MyApp\Version=1.0.0
在上述场景中,已安装应用程序的2.0.0版,但尚未为相关用户运行每个用户配置副本。一旦运行HKCU版本,它将被设置为2.0.0,并且在HKLM增加之前,操作不会再次运行。我发现处理这种情况的最佳方法是在应用程序中实现“保留更改”逻辑,而不是通过设置。由于所有逻辑都嵌入到主EXE文件中,因此这可以避免使设置复杂化,并对配置过程产生更好的控制。这意味着您可以逐步完成该过程,并以正常的“开发方式”对其进行调试 要实现这一点,您可以将“基本配置”文件安装到只读位置,例如
- %ProgramFiles%\MyCompany\MyApp\MyConfig**
- HKLM\Software\MyCompany\MyApp\Version=2.0.0
- HKCU\Software\MyCompany\MyApp\Version=1.0.0
在上述场景中,已安装应用程序的2.0.0版,但尚未为相关用户运行每个用户配置副本。一旦运行,HKCU版本将设置为2.0.0,并且在HKLM增加之前,操作不会再次运行。你好,威廉,谢谢你的回复,但我仍然很难理解如何实现将配置文件保存为所述未版本文件。你能给我举个例子吗?提前谢谢。嗨,威廉,谢谢你的回复,但我仍然觉得很难理解我需要如何实现保存配置文件,如所说的未版本文件。你能给我举个例子吗?提前谢谢。