Удалить ClickOnce из приложения WinForms - PullRequest
39 голосов
/ 29 мая 2009

У меня есть приложение WinForms, которое собиралось использовать ClickOnce. Но оказывается, что ClickOnce не будет работать для моего приложения, поэтому я хотел бы удалить его. Только ... кажется, нет очевидного способа сделать это. Там нет кнопки "Un-ClickOnce". Кто-нибудь знает, какие шаги мне нужно предпринять, чтобы мое приложение стало таким, каким оно было до интеграции ClickOnce?

(я знаю, что могу создать новый проект и импортировать в него что-то, но это кажется глупым, поэтому я надеюсь, что есть другой способ.)

Ответы [ 5 ]

105 голосов
/ 27 апреля 2011

Другие ответы здесь не являются правильными или полезными. Неверно утверждать, что его никогда не нужно удалять.

Один из таких примеров, с которыми я столкнулся в последнее время, был, когда приложению требовались административные привилегии. Любая попытка встроить административные требования в манифест приведет к тому, что приложение даже не будет компилироваться, пока ClickOnce все еще присутствует в решении.

Следующие два шага позволили мне отключить ClickOnce (в Visual Studio 2010):

В свойствах проекта,

  1. Подпись вкладка: снимите флажок "Подписать манифесты ClickOnce"
  2. вкладка * Безопасность : снимите флажок "Включить настройки безопасности ClickOnce"
1 голос
/ 13 июня 2009

Я согласен с остальными, нет необходимости «удалять ClickOnce».

Если вы действительно этого хотите, все настройки IIRC ClickOnce находятся в файле .csproj для проекта, поэтому удалите все теги XML, относящиеся к ClickOnce. (возможно, проще всего сравнить с новым приложением, которое еще не было развернуто с CO, чтобы увидеть, каких тегов там нет)

1 голос
/ 28 октября 2010

Если вы ссылаетесь на файлы манифеста развертывания приложения ClickOnce, которые появляются в папке отладки, перейдите в Свойства проекта -> Безопасность и снимите флажок «Включить параметры безопасности ClickOnce»

Вы также можете перейти в «Свойства проекта» -> «Подписание» и снять флажок «Подписывать манифесты ClickOnce», но в этом нет необходимости, поскольку при первом снятии флажка ему нечего подписывать.

Теперь, если вы перейдете к отладке и удалите файлы .application, при перестройке они больше не появятся.

1 голос
/ 29 мая 2009

Я полагаю, что единственное, что осталось от ClickOnce после того, как вы прекратите его развертывание, - это файл publish.xml, который сообщает вам о том, что вы развернули на данный момент и в какой версии вы находитесь. Иначе на самом деле нет ничего, что могло бы вас беспокоить, просто выполните развертывание из папок bin, как без ClickOnce.

0 голосов
/ 21 мая 2019

На всякий случай, это кому-нибудь поможет ...

Моя проблема заключалась, в частности, в том, что у меня был зависимый проект «Библиотека классов», у которого была отмечена «подписать манифест clickonce», но отключена, поэтому его нельзя было отключить. Мое решение было:

  • Преобразование этого проекта в приложение Windows,
  • Повторно открыть панель свойств,
  • Удалите подпись в виде клика один раз на вкладке подписи на панели свойств,
  • Преобразование проекта обратно в «Библиотеку классов».

Я считаю это ошибкой MS (все еще в VS2019 16.0.1, которую я сейчас использую), но обходной путь исправил ее.

Удачи!

...