Я создал установщик Windows для программы клиент-сервер, используя VS 2013 и InstallShield LE 2015.
Я вхожу в систему с правами администратора и запускаю установщик.Все работает нормально.
Затем я изменяю реестр для Local_Machine для некоторых ключей, чтобы определить местоположение базы данных и т. Д. Для программы (это также было сделано при первоначальной установке, но из-за некоторых проблем, обсуждаемых в При каждом входе в систему программа пытается настроить параметры установки в реестре HKEY_LOCAL_MACHINE , я удалила раздел модификации реестра из программы установки).
Затем я запускаю программу, дважды щелкнув по ярлыку, помещенномуустановщик на рабочий стол и протестируйте его.Все работает хорошо.
Затем я выхожу из компьютера.
Другой пользователь с правами администратора входит в систему и нажимает на ярлык, и возникает проблема: программа начинает переустанавливать себя!
Затем он исправляется и работает нормально.
Но если первый пользователь войдет в систему позже, он выполнит ту же операцию переустановки, что и первый пользователь после того, как до тошноты!
Таким образом, даже несмотря на то, что установщик не создает какие-либо элементы реестра сам по себе, каким-то образом, как только программа получает доступ к реестру или считает, что она повреждена, ОС Windows вмешивается и пытается восстановить все, что необходимо исправить.
InstallShield LE не позволяет устанавливать ярлыки "Advertised Shortcut" или
. Я удаляю ярлык, созданный установщиком, и воссоздаю его вручную после установки, но при этом испытываю ту же проблему.Таким образом, природа ярлыка, возможно, не является причиной.
Эта проблема возникает только при нескольких входах в систему.Если многие люди входят в систему, используя одинаковые учетные данные, это никогда не происходит.
Итак, что не так?Я изучил много ответов StackOverflow, чтобы решить эту проблему безуспешно.Любая помощь будет высоко оценен.