2011-06-29 119 views

回答

10

这是因为Microsoft文章有点误导。本文解释的是如何创建自定义安装程序应用程序。它没有描述如何改变你的应用程序,以便它有一个自定义的安装程序对话框,而不是标准的,它是系统的一部分。

要创建客户安装程序,请创建一个与MSDN文章中代码中概述的应用程序类似的单独应用程序。您需要在此应用程序的Main方法中添加步骤#5中的代码,但是,请修改代码以从您的安装点查找应用程序清单。编译应用程序并将其分发给用户,但您认为合适。

虽然您将不得不管理初始安装程序应用程序的分发,但您可以在应用程序中实现此更新过程。在这种情况下,请按照文章中的说明进行操作。正如我前面提到的,您将希望在您想要的时候检查您的更新。一旦需要更新,应用程序就可以在ClickOnce应用程序中调用第5步中的代码。

+0

谢谢。这确实是误导。 –

6

我与微软的ClickOnce家伙进行了一次完整的对话。说实话,我很厌烦,因为他们没有提供足够的指导。他这样说:你必须创建一个exe文件,但你必须进行检查以确保在运行exe之前安装了.NET Framework。因此,创建自己的可执行文件并将其作为setup.exe运行 - 这是安装应用程序的自定义代码的位置。

我认为他最终意味着你必须在非.NET代码(如C)中编写某种类型的引导程序,检查.NET Framework并在需要时安装它。然后它会触发另一个exe文件,这是一个托管代码,可以调用InPlaceHostingManager和其中的自定义UI。

+1

我看到了,也许解决方法是使用ClickOnce为我的客户提供一个安装程序(就像谷歌使用ClickOnce分发Chrome安装程序(而不是Chrome本身))稍后使用应用程序本身启动InPlaceHostingManager。 –