Как передать аргумент командной строки в приложение ClickOnce? - PullRequest
21 голосов
/ 09 января 2009

У меня есть приложение Clickonce, которое запускается из меню «Пуск» (локально). Я хотел бы иметь возможность указать параметр, чтобы приложение могло загружать определенные данные. Приложение находится на файловом ресурсе и будет запущено с использованием URL-адреса только один раз (например, , описанное здесь в MSDN ) Это подразумевает, что метод, описанный в этой ссылке, не будет работать; пользователи будут запускать приложение с помощью ярлыка .appref-ms в меню «Пуск».

Я не смог найти решение. Можно ли как-то передать параметр в приложение клик один раз? Если так, то как? Если нет, то какие есть альтернативы?

Ответы [ 4 ]

17 голосов
/ 10 января 2009

Поскольку вы попадаете в манифест развертывания через URL, вы можете передать всю эту информацию через строку запроса (например, http://clickonce.example.com/shell.application?p1=this&p2=that)

Я собирался напечатать шаги, затем гуглил и нашел этот блог , который в основном перечисляет все шаги. Я сделал нечто подобное в одном случае без проблем. Единственное, что немного сложнее, это то, что вам нужно перенастроить после настройки, но если вы получили его для развертывания, вы уже знаете, как его настроить.

Удачи!

5 голосов
/ 23 июля 2013

Все ответы здесь относятся только к приложениям Online ClickOnce. В этом сообщении на форуме MSDN и в этом сообщении в блоге обсуждаются некоторые способы сделать это для приложений Offline ClickOnce.

2 голосов
/ 02 марта 2009

Возможно, вы могли бы передать параметр в URL в первый раз, и приложение обратило на это внимание и записать параметры в файл конфигурации или переменные среды или что-то подобное.

При последующих запусках загрузить из файла конфигурации

0 голосов
/ 02 марта 2009

Вы передаете параметры в виде строки запроса и используете HttpUtility.ParseQueryString, как описано в этой статье MSDN .

...