#visual-studio #windows-installer #setup-project
#visual-studio #windows-установщик #установка-проект
Вопрос:
Я создал проект установки установщика Visual Studio (2010) для развертывания базового приложения WinForms, и мне нужно, чтобы мой установщик создал пару каталогов на основе ОС, на которой он работает. Например, когда установщик запускается в Windows XP (и более ранних версиях), мне нужно создать:
Application FolderNewFolder
Если программа установки запущена в Vista или более поздней версии, мне нужно создать каталог под общей папкой данных приложения (т. Е. C:ProgramData ) вот так:
Common Application Data FolderNewFolder
Я вижу, что могу добавить «Пользовательскую папку» через View -> «Файловая система», но я не уверен, как объявить свойство DefaultLocation для этой новой папки. По умолчанию используется значение [TARGETDIR], но я не уверен, как указать местоположение каталога, который я хочу создать. Можно ли это сделать с помощью проекта установки установщика Visual Studio или мне не повезло?
Ответ №1:
Это не поддерживается проектами установки Visual Studio.
Другие средства разработки установки поддерживают это с помощью настраиваемого действия типа 51 (свойство, установленное с форматированным текстом).
В принципе, ваш TARGETDIR по умолчанию может указывать на одно местоположение, а пользовательское действие типа 51 может изменить его на другое местоположение во время установки. Это пользовательское действие может быть обусловлено свойством VersionNT .
Ответ №2:
Я, наконец, получил эту работу, добавив оба расположения папок в свой проект установки через View -> File System. Затем я указал условие для каждой папки. Для папки, которую я хочу создать в XP, я использовал «WindowsBuild < 6000», а для папки Vista / Windows 7 я использовал «WindowsBuild> = 6000».
Ответ №3:
Для вашей специальной папки вы можете установить местоположение по умолчанию на [CommonAppDataFolder].
В XP это приведет к c:documents и настройки все пользователи данные приложения
И в Win 7 это приведет к c:ProgramData