На языках как Python я обычно использовал бы словарь, поскольку он включает меньше служебное, чем создание нового класса.
Однако, если я возвращаю постоянно тот же набор переменных, тогда это, вероятно, включает новый класс, который я факторизую.
Невозможно сделать это с помощью самого ClickOnce, но вы можете создать стандартный загрузчик Setup.exe, который устанавливает приложение ClickOnce и имеет настраиваемое действие удаления.
Обратите внимание, что это однако это создает две записи в "Установка и удаление программ", поэтому вам нужно скрыть одну из записей (приложение clickonce).
Ваша последняя проблема будет заключаться в том, что при щелчке один раз нет опции "тихое удаление", поэтому вы можно сделать что-то вроде этого:
On Error Resume Next
Set objShell = WScript.CreateObject("WScript.Shell")
objShell.Run "taskkill /f /im [your app process name]*"
objShell.Run "[your app uninstall key]"
Do Until Success = True
Success = objShell.AppActivate("[your window title]")
Wscript.Sleep 200
Loop
objShell.SendKeys "OK"
(Найдено здесь )