C# 从WinForms应用程序中删除ClickOnce

C# 从WinForms应用程序中删除ClickOnce,c#,.net,winforms,clickonce,C#,.net,Winforms,Clickonce,我有一个WinForms应用程序,它将使用ClickOnce。但事实证明ClickOnce对我的应用程序不起作用,所以我想删除它。只是…似乎没有一个明显的方法可以做到这一点。没有“取消单击一次”按钮。有人知道我需要采取什么步骤才能让我的应用程序恢复到ClickOnce集成之前的样子吗 (我知道我可以创建一个新项目并将内容导入其中,但这样做似乎很愚蠢,所以我希望有另一种方法。)我相信,一旦停止部署,ClickOnce唯一剩下的就是filepublish.xml,它会告诉您到目前为止部署了什么以及您

我有一个WinForms应用程序,它将使用ClickOnce。但事实证明ClickOnce对我的应用程序不起作用,所以我想删除它。只是…似乎没有一个明显的方法可以做到这一点。没有“取消单击一次”按钮。有人知道我需要采取什么步骤才能让我的应用程序恢复到ClickOnce集成之前的样子吗


(我知道我可以创建一个新项目并将内容导入其中,但这样做似乎很愚蠢,所以我希望有另一种方法。)

我相信,一旦停止部署,ClickOnce唯一剩下的就是file
publish.xml
,它会告诉您到目前为止部署了什么以及您使用的版本。否则,那里真的没有什么需要您关心的,只需从
bin
文件夹中部署,就像不使用ClickOnce一样。

我同意其他人的看法,没有必要“删除ClickOnce”


如果你真的要这么做的话,IIRC所有ClickOnce设置都在项目的.csproj文件中,所以删除所有与ClickOnce相关的XML标记。(可能最容易与从未与CO一起部署的新应用程序进行比较,以查看没有哪些标记)

如果您参考调试文件夹中显示的ClickOnce应用程序部署清单文件,请转到项目属性->安全,并取消选中“启用ClickOnce安全设置”

您也可以转到“项目属性->签名”并取消选中“为ClickOnce清单签名”,但这不是必需的,因为如果您第一次取消选中,它没有要签名的内容


现在,如果在重建时转到调试并删除.application文件,则不会再次出现。

此处的其他响应不正确或没有帮助。说它永远不需要移除是不正确的

我最近遇到的一个这样的例子是当应用程序需要管理特权时。在解决方案中仍然存在ClickOnce时,任何将管理要求嵌入清单的尝试都将导致应用程序甚至无法编译

以下两个步骤使我能够关闭ClickOnce(在Visual Studio 2010中):

在项目属性中

  • 签名选项卡:取消选中“为ClickOnce清单签名”
  • 安全选项卡:取消选中“启用ClickOnce安全设置”

  • 以防万一这对任何人都有帮助

    我的问题是,我有一个依赖的“类库”项目,该项目选中了“签署clickonce清单”,但被禁用,因此无法取消选中。我的解决办法是:

    • 将该项目转换为windows应用程序
    • 重新打开“属性”面板
    • 从“属性”面板上的“签名”选项卡中删除“单击一次”清单签名
    • 将项目转换回“类库”

    我认为它是一个MS错误(仍然在VS2019 16.0.1,我现在使用),但解决办法固定它。< /P>


    祝你好运

    什么是ClickOnce“感染”了你的程序?你不会从应用程序中“删除”ClickOnce,你只是决定不使用它,然后以另一种方式部署。谢谢。对我来说,我不希望不必要的文件进入构建,因为它们很可能会被复制到其他机器上,等等。如果你不使用它们,当你不能拥有它们时,它会更干净!如果项目中有DLL文件(参考),1.)如何可能?在这种情况下启用它吗?我遇到这个问题是因为我的一个Windows服务项目有一个app.publish目录,其中只有一个.exe文件。上面的说明(取消选中Signing/ClickOnce和Security/ClickOnce)已删除该目录。来自未来的问候。注意:对于ClickOnce部署的VSTO,没有
    安全性
    tabI已将代码复制到另一台计算机上,并在尝试生成时收到“SignTool.exe not found.”错误。显然,“ClickOnce发布工具”是Visual Studio 2015安装/修改选项中的复选框。ClickOnce不适合此程序,因此有关在Visual Studio上运行修改设置时将其从项目属性中删除的信息非常有用。谢谢