1
4

1 回答 1

1

您可以将 WPF 应用程序设置为不使用自动更新。该设置位于项目属性中Publish -> Updates... -> (uncheck) The application should check for updates。禁用该设置后,您可以自行编写代码来检查和下载更新的方式。

请参阅本页底部的示例以异步检查 ClickOnce 更新。您可以将其用作脚手架来构建您自己的更新逻辑。

所以是的,您可以自定义流程,但仅限于从 ClickOnce API 获得的回调。

您可以使用异步回调来更新初始屏幕上的信息。是的,您需要重新启动,但这就是许多商业启动器/更新器的行为方式。如果更新不重要,您可以等待用户下次重新启动程序。这就是 Chrome 浏览器进行更新的方式。

您链接到的另一个 SO 问题是关于首次安装期间的演示文稿。如果在第一次运行期间不显示默认 UI 对您很重要,那么您必须编写一个用户将下载并运行的应用程序。该应用程序将使用InPlaceHostingManager以编程方式下载您的“真实”应用程序,同时显示您的自定义 UI。

如果您在第一次安装时不关心默认 UI,您可以将更新逻辑放在您的主应用程序中并避免两个 .exe。如果不显示默认 UI 真的很重要,您将不得不使用两个 .exe 解决方案。

于 2013-04-10T03:11:21.147 回答