MSI не устанавливает файлы в файловую систему пользователя

#.net #visual-studio-2008 #installation #windows-xp #windows-installer

#.net #visual-studio-2008 #установка #windows-xp #windows-установщик

Вопрос:

У меня есть файл MSI, который, наряду с развертыванием моего исполняемого файла, я хочу установить другие файлы (совсем не связанные с .NET) во вложенную папку другого поставщика в папке Program Files. Я разработал файловую структуру MSI именно для этого, и все файлы отображаются под проектом установщика в VS. Когда я выполняю тестовую установку на своем компьютере, все файлы установлены правильно, но они не развертываются на компьютере пользователя. Мне не хватает настройки / свойства в VS? Нужно ли мне сначала скопировать файлы в какой-то временный каталог?

Комментарии:

1. Является ли целевая машина 64-разрядной? если да, то в этом случае вы увидите файлы внутри Program Files (x86) папки.

2. Программа установки запрашивает развертывание для текущего пользователя или для всех пользователей?

3. Он спрашивает. По умолчанию используется значение «все пользователи».

4. Какая целевая ОС? Vista или Windows 7? Если это так, возможно, проблема в UAC.

Ответ №1:

Во-первых, очень плохой практикой является развертывание любых файлов вообще в папку установки другого поставщика, но иногда вам приходится — особенно для установки подключаемых модулей.

Я не совсем понимаю, что вы пишете, но ваши файлы могут оказаться в другом общем расположении, чем «program Files«, например, в разделе «общие файлы» или «настройки приложения«.

Я бы запустил установку администратора в вашей программе установки, чтобы посмотреть, как ваши файлы извлекаются из MSI. Просто откройте командную строку и введите msiexec /a yourmsi.msi , а затем укажите место извлечения. Тогда вы, скорее всего, увидите, что файлы отправляются в другое расположение, чем вы ожидали.