Где должны быть установлены исполняемые файлы в Windows 7? - PullRequest
0 голосов
/ 19 августа 2010

В настоящее время я работаю над установщиком приложений и мне интересно, куда должны быть установлены исполняемые файлы в Windows 7.

Если я устанавливаю от имени администратора, мои исполняемые файлы помещаются в C: \ Program Files.

Если я устанавливаю свой продукт как обычный пользователь, куда следует помещать исполняемые файлы?

Заранее спасибо.

Ответы [ 4 ]

2 голосов
/ 19 августа 2010

Какой установщик вы используете?

MSI работает с повышенными привилегиями.Вы можете установить приложение в папку с программными файлами

1 голос
/ 19 августа 2010

Исполняемые файлы должны находиться в папке Program Files, точное местоположение которой может варьироваться от установки к установке.Это означает, что установка должна работать с повышенными правами.Если InnoSetup создает MSI-файлы, они будут запрашивать повышение прав.Если он создает файл с именем setup.exe, он также запросит повышение прав.Если по какой-либо причине exe-файл имеет другое имя, например, GetStarted.exe, то вам нужно вручную создать внешний манифест (GetStarted.exe.manifest) и ввести requireAdministrator для запрашиваемогоExecutionLevel, который обеспечит ваш установщик запрашивает повышение прав.1002 * Независимо от того, как он запрашивает повышение прав, если пользователь, выполняющий установку, является администратором (например, вами), ему просто нужно будет нажать согласие.Если они не администраторы, им нужно будет получить разрешение администратора для них.После этого установщик сможет записывать в Program Files.

Если для вас важно, чтобы пользователи, не являющиеся администраторами, могли установить приложение, тогда пусть исполняемые файлы должны быть в профиле пользователя, но это не будет моим первым выбором.Защита, предоставляемая Программным файлам, означает, что пользователи с меньшей вероятностью обнаружат испорченные копии вашего приложения, если вы установите его в защищенную область.

1 голос
/ 19 августа 2010

Вы, вероятно, должны хранить это в директории AppData, как я уже упоминал, в ответ на @ChrisF.Помните, что пользователь может переместить этот каталог, поэтому я бы не стал явно указывать на него.Существует переменная окружения, которую вы можете получить, которая применяется только к вошедшему в систему пользователю, и это %AppData%.

. Имейте в виду, что при ее вводе %AppData%/Roaming пользователь будет следовать на нескольких компьютерахтот же домен и %AppData%/Local останутся на одной машине.

1 голос
/ 19 августа 2010

Поместите файлы в папку пользователя.

Это будет означать, что приложение доступно только этому пользователю.

...