Member 14369462 Ответов: 1

Как определить, когда приложение windows удаляется с помощью C#


я хочу обработать событие, когда приложение windows удаляется с помощью C#

Что я уже пробовал:

MyInstaller() : base()
{
   BeforeUninstall += new InstallEventHandler(BeforeUninstallEventHandler);
}
private void BeforeUninstallEventHandler(object sender, InstallEventArgs e)
{
   // Add steps to perform any actions before the Uninstall process.
   Console.WriteLine("Code for BeforeUninstallEventHandler"); 
}

Richard MacCutchan

В чем же вопрос?

Member 14369462

как определить, когда приложение Windows удаляется с помощью C#

Richard MacCutchan

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

Liktor Janos

Хорошо, но это зависит от контекста. Вы хотите просто сделать некоторые записи? Или хотите предотвратить запуск вашего деинсталлятора дважды? Вас интересует конкретное запущенное состояние деинсталлятора приложений? Или вы хотели бы знать, если какой-либо деинсталлятор запущен чем-то/кем-то?
Что еще более важно, вам нравится изменять свой собственный код или подключаться к процессу установки, принадлежащему кому-то другому.
У меня есть несколько идей, хотя вы должны заполнить более подробную информацию, если я могу спросить :)

1 Ответов

Рейтинг:
2

RickZeeland

Вы можете переопределить Удалить метод: Установщик.Метод Удаления(IDictionary) (System.Конфигурация.Установка) | Microsoft Docs[^]


Liktor Janos

Переопределение метода удаления просто позволяет вашему коду работать вместо исходного метода удаления. Я думаю, что первоначальный вопрос заключается в том, чтобы обнаружить запуск любого другого процесса удаления (не вашей программы, а любого другого, который не основан на вашем коде и исполняемом файле) и выполнить какую-то операцию. Конечно было бы полезно узнать каковы были истинные намерения члена 14369462

RickZeeland

Спасибо, что прояснили ситуацию! посмотрим, чего хочет ОП.