Нужно проверить, что приложение уже установлено или не использует пользовательский класс установщика
Я должен создать одно приложение проекта установки C#, в то время при установке я также включаю настраиваемые действия - установить на сервер filezilla. Перед установкой сервера filezilla необходимо проверить, установлен ли он уже или нет, если "да" означает установку приложения в одиночку, в противном случае установите приложение и сервер filezilla. есть ли класс установщика для выполнения этого события. жду предложения
1 ответ
Решение
Вы можете попробовать использовать пространство имен Microsoft.Win32 для классов реестра:
string regKey = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall";
using (Microsoft.Win32.RegistryKey key = Registry.LocalMachine.OpenSubKey(regKey))
{
if (key.GetSubKeyNames().Any(keyName => key.OpenSubKey(keyName).GetValue("DisplayName") == "My App's Display Name"))
Console.WriteLine("Already installed...");
else
Console.WriteLine("Start installing...");
}