Проект установки Visual Studio - установка текущего пользователя с помощью стандартной учетной записи Windows
Я протестировал мой установщик на нетбуке под управлением Windows 7 Starter, вошедшего в систему с использованием стандартной учетной записи пользователя, и заметил некоторые проблемы, с которыми я не сталкивался ранее.
Поскольку пользователь работает как Стандартный пользователь, ему предлагается ввести данные учетной записи администратора. Это нормально и позволяет запустить установщик. Теперь, когда пользователь выбирает, хотят ли они установить программное обеспечение для текущего пользователя / всех пользователей, и он выбирает текущего пользователя, происходит следующее:
Ярлыки (рабочий стол и меню приложения) не создаются для обычного пользователя, а создаются для учетной записи администратора. Я вышел из учетной записи обычного пользователя и вошел как учетная запись администратора, и ярлыки появились правильно. Это не то, что я ожидал.
Удаление на этом компьютере также оставило после себя раздел реестра, созданный установщиком. Такое поведение не происходило на рабочих столах, которые я опробовал.
Стоит отметить (но это не должно влиять на этот сценарий) то, что я использую dotNetInstaller для начальной загрузки некоторых требований, которые необходимо запустить моему приложению (Sql Compact DB 3.5) до того, как сам загрузчик вызовет исполняемый файл программы установки Visual Studio 2010 (мое приложение),
Если обычный пользователь вошел в систему и пытается установить мой продукт, введите учетные данные администратора и выберите установку для текущего пользователя, как мне получить его для установки ярлыков для учетной записи обычного пользователя, а не для учетной записи администратора?
Кроме того, почему запись реестра, созданная в рамках проекта установки, не удаляет себя, когда пользователь удаляет программу (с помощью добавления / удаления программ) на этом компьютере? Установка Windows на этом нетбуке как-то повреждена?
1 ответ
Если обычный пользователь вошел в систему и пытается установить мой продукт, введите учетные данные администратора и выберите установку для текущего пользователя, как мне получить его для установки ярлыков для учетной записи обычного пользователя, а не для учетной записи администратора?
Ты не можешь Индивидуальная установка для обычного пользователя должна выполняться без повышения прав. Это означает, что он может использовать только местоположения для каждого пользователя, такие как папка "Данные приложения" и куст HKEY_CURRENT_USER. Если вы повышаете уровень установки для каждого пользователя, она будет выполняться для той учетной записи, для которой вы повышаете уровень.
Кроме того, почему запись реестра, созданная в рамках проекта установки, не удаляет себя, когда пользователь удаляет программу (с помощью добавления / удаления программ) на этом компьютере?
Где именно эта запись реестра? Если он находится в HKEY_CURRENT_USER, возможно, процесс удаления не имеет к нему доступа (например, он был установлен для другой учетной записи пользователя). Вы пытались создать журнал удаления, чтобы увидеть, что происходит?