2014-09-01 4 views
1

У меня есть файл config.txt в моем проекте VS 2013. Вот его разрешения для ВСЕХ ПРИЛОЖЕНИЙ ПАКЕТОВ: enter image description hereРазрешения для ВСЕХ ПРИЛОЖЕНИЙ ПАКЕТЫ вопрос

Когда я получаю setup.exe, компилируя проект InstallShield LE внутри моего решения, и когда я запускаю setup.exe, я получаю этот файл config.txt в Program Files с этими разрешения:

enter image description here

Я хочу, чтобы все права, чтобы иметь возможность после извлечения setup.exe. Как я могу это сделать? Спасибо

+0

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

ответ

2

По умолчанию папка ProgramFiles и все подкаталоги и файлы имеют только чтение и чтение & Выполнение разрешений для целей безопасности. Таким образом, все файлы, которые копируются в эту папку, наследуют эти разрешения.
Чтобы изменить права доступа к файлам или папкам с помощью InstallShield, вы можете обратиться к утверждению documentation. Также это может быть достигнуто путем запуска различных инструментов для работы с разрешениями, таких как subinacl.exe, icacls.exe и т. Д. С помощью пользовательских действий.

Но, как уже упоминалось, Майкл Урман в комментариях, это плохая идея разместить файлы конфигурации с доступом для записи в ProgramFiles (и других системных папках) из-за возможных проблем безопасности. Итак, я также рекомендую воздерживаться от использования этой логики и хранить эти файлы в папках профиля пользователя.

+0

Pseudo +1 за правильную информацию (первые два предложения), так как я не могу одобрить сообщение, предлагающее изменить разрешения в ProgramFiles. –

+0

Я понимаю ваши проблемы, но многие приложения используют ProgramFiles, например папки, для хранения файлов конфигурации \ temp. Это вопрос программистам - не к упаковщикам. С другой стороны, вы можете предоставить доступ для чтения и записи только к одному файлу конфигурации, чтобы предотвратить возможные проблемы с безопасностью. –

+0

Это ограничивает сферу безопасности, да, но не мешает им. Мы уже знаем, что этот аспект программы плохо написан, поэтому кто хочет предположить, что поврежденный или отсутствующий файл конфигурации не нарушит приложение? –

Смежные вопросы