C# 安装项目安装完成后重新启动的最简单方法是什么?

C# 安装项目安装完成后重新启动的最简单方法是什么?,c#,setup-project,reboot,C#,Setup Project,Reboot,我不想问这个问题,因为我知道已经有很多关于它的问题,有些问题非常接近我想要做的事情: 第一个问题似乎表明,没有外部软件是不可能的,但第二个问题给出的答案似乎正是我想要的。但我真的不明白当建议设置REBOOT=Force时它指的是什么 我通读了有关属性的链接文章,我不知道这是否只是MSDN的编写方式,但我觉得在安装项目中如何使用它们一点也不明智。一般来说,我对C#还是相当陌生的,特别是对项目的设置 在属性之外,似乎要用最少的外部依赖性来做的下一件最简单的事情是创建一个小型C#应用程序,它除

我不想问这个问题,因为我知道已经有很多关于它的问题,有些问题非常接近我想要做的事情:

第一个问题似乎表明,没有外部软件是不可能的,但第二个问题给出的答案似乎正是我想要的。但我真的不明白当建议设置
REBOOT=Force
时它指的是什么

我通读了有关属性的链接文章,我不知道这是否只是MSDN的编写方式,但我觉得在安装项目中如何使用它们一点也不明智。一般来说,我对C#还是相当陌生的,特别是对项目的设置

在属性之外,似乎要用最少的外部依赖性来做的下一件最简单的事情是创建一个小型C#应用程序,它除了关闭系统之外什么都不做。然后将自定义操作添加到提交部分以调用此应用程序。对我来说,这似乎是一种过激行为,这是否意味着无用的应用程序必须是安装的一部分,并留在用户机器上


我发现了很多关于使用WIX或Orca的东西,但我有我不使用它们的理由(至少因为我必须为任何使用的软件编写商业案例)。我甚至没有尝试创建一个非常复杂的安装程序,只是复制了一些新的EXE,然后重新启动,以确保在启动时使用新的EXE。尽管我现在认为重新启动可能不值得,只需调用新的exe作为自定义操作即可。

重新启动是一个预定义的Windows Installer属性:

安装程序属性存储在MSI数据库的中。因此,您只需在属性表中添加一个新行,其中包含以下信息:

  • 属性-重新启动
  • 价值力
您可以在此处阅读有关安装程序属性的更多信息:


请注意,Visual Studio安装项目不支持设置属性值。因此,您可以使用Orca编辑MSI以添加新行,也可以切换到其他设置创作工具。

好的,谢谢,现在这更有意义了。那么,在使用标准安装项目时,创建自定义操作是否是在构建后不需要额外步骤就可以重新启动的唯一方法?是的,自定义操作将是唯一的解决方案。请注意,这也是不可取的-例如,有些人喜欢做一些注释或必须做一个屏幕截图(我曾经在这样的公司工作过)在重新启动之前。或者其他事情(将VM移动到其他机器)。强制重新启动并不可取。@TomTom将值设置为
force
实际上并不强制重新启动,而是强制重新启动提示。用户可以选择是否重新启动,但至少知道应该重新启动。@CosminPirvu是否有关于此原因的初学者指南我不知道如何以及在何处设置这些值?