У меня проблемы с использованием макросов в моем INF-файле, который я использую для создания моей кабины, особенно при установке строки InstallDir
. Если я сделаю что-то вроде этого:
InstallDir=\<PathToProgramFiles>\MyAppName
тогда все отлично работает. Однако, если я сделаю это:
InstallDir=%CE1%\MyAppName
затем я получаю следующую ошибку при попытке установить кабину (дважды коснувшись ее на моем устройстве): «MyAppName не был успешно установлен. Пожалуйста, запустите программу установки снова.»
Это, кажется, относится только к встроенным макрос-строкам. Я могу использовать %AppName%
без проблем. Может быть, есть некоторые параметры реестра, которые не установлены должным образом, что обычно разрешает макрос %CE1%
?
Есть идеи о том, что происходит?
Редактировать: На моем устройстве нет каталога \Program Files
. Кажется, макрос %CE1%
всегда разрешает этот путь, и если InstallDir
, указанный в inf-файле, не существует (за исключением последней части каталога, установка завершается неудачно. Создание \Program Files
вручную устраняет проблему. Так как многие устройства, с которыми я работаю, имеют разные пути для своего каталога Program Files, существует ли общий способ заставить установщик по умолчанию установить действительный каталог Program Files? Полагаю, мой единственный вариант - не указывать путь и заставить пользователя выбрать один?