Путь к файлу конфигурации проекта установки Visual Studio 2017 c # - PullRequest
0 голосов
/ 29 июня 2018

Я создал приложение службы Windows в C #, которое использует файл базы данных SQLite для хранения полученных данных. Я хочу, чтобы пользователь мог выбрать каталог, в котором файл базы данных SQLite хранится на их ПК во время установки. Как я могу это сделать, и как основное приложение может получить путь к файлу, выбранный пользователем?

1 Ответ

0 голосов
/ 29 июня 2018

Единственная папка, которую Visual Studio Setups (и большинство других тоже) позволяет вам выбрать, это папка приложения, которая по умолчанию имеет значение Program Files.

Это действительно не стоит делать то, что вы просите, потому что:

  1. Зачем заставлять пользователя выбирать папку и усложнять настройку, чтобы сообщить приложению, где она находится?

  2. Что если пользователь выберет папку, к которой приложения не смогут получить доступ, если вы хотите разрешить приложению ограниченное количество пользователей? Или место, в котором происходит сбой установки?

Лучше просто выбрать наиболее разумное рабочее место, которое вы можете тщательно протестировать с приложением, и это AppDataFolder, если оно является частным для приложения. Это папка данных приложения пользователя в представлении файловой системы проекта установки.

https://docs.microsoft.com/en-us/windows/desktop/Msi/appdatafolder

Тогда приложение автоматически знает, где оно находится, и все просто работает.

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

...