Я думаю, вы могли бы подделать его. Ввести «IsInstalled» boolean свойство, по умолчанию значение false. Затем в Program.cs, измените метод Main(), чтобы выглядеть следующим образом:
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
if (!Properties.Settings.Default.IsInstalled)
{
Properties.Settings.Default.IsInstalled = true;
Properties.Settings.Default.Save();
MessageBox.Show("Install Complete");
return;
}
Application.Run(new Form1());
}
Так что теперь, когда приложение сначала установлен, он проверяет, что свойство и выводит на экран сообщение для пользователя, а затем завершает работу.
Если вы хотите получить хитрость, вы можете посмотреть на разбор URI активации для развертывания и иметь параметр URI, который указывает, должна ли программа запускаться, когда она впервые установлена или просто закрывается молча.
Я также хотел бы понять, почему он запускает приложение во время установки. Я спросил здесь: http://stackoverflow.com/questions/19735193/why-does-the-clickonce-deployment-installer-run-the-application-during-installat – Xonatron