2017-04-03 78 views
0

我有一个Winforms应用程序。我用ClickOnce发布了它。但我的要求是在表单应用程序中使用ClickOnce API,而不必在客户端安装已发布的安装程序。我发现ApplicationDeployment.IsNetworkDeployed属性必须用于此。但每次运行应用程序时,此属性都会返回false。我无法使用任何ClickOnce API。使用ClickOnce API而不安装

我错过了什么吗?我应该如何在不安装应用程序的情况下使用ClickOnce API?

请分享您的想法。

在此先感谢。

+0

仅当您从已安装的部署中运行应用程序时,IsNetworkDeployed才会返回true。重写此行为不是很好的做法。 所以问题是“为什么你需要将该标志设置为false?” – Grappachu

+0

也许这会给你额外的见解:http://stackoverflow.com/q/41562219/4011717 – wkl

回答

1

ApplicationDeployment.IsNetworkDeployedtrue当应用程序已经被安装在机器上已经使用安装过程中的ClickOnce创建的.appref-MS参考启动。否则它是false

在没有安装应用程序的情况下,没有办法使用API​​(即ApplicationDeployment.CurrentDeployment),因为没有当前可用的部署。

+0

感谢您的信息。 – sam