У меня большая проблема с моим Проектом и настройкой, которую я сделал для него.
Мое приложение находится в VS2005 и устанавливает файл MDF (SqlExpress 2005) в папку ApplicationData в Windows 7.
Первая проблема, с которой я столкнулся, заключалась в том, что установщик помещает MDF и LDF в папку ApplicationData\MyApplication
, разрешения неправильные, и тогда мое приложение не может получить доступ к файлам для подключения к SQL Express.
То, что я сделал, было настраиваемым действием, которое дает всем разрешение (я знаю ... это не очень хорошо). Хорошо, пока мое приложение работает с этим.
Вторая проблема, с которой я сталкиваюсь, заключается в том, что, если пользователь не является учетной записью администратора по умолчанию, при выполнении MSI-файла MSI выдает ошибку 2869 при попытке запустить настраиваемое действие. С этой проблемой я должен заставить пользователя выполнить setup.exe, а не файл MSI. Или, если пользователь выполняет файл MSI, то каким-то образом выполните правильную настройку.
Я прочитал кое-что о скриптах NoImpersonate и NoImpersonate.js в PostBuildEvent:
cscript.exe "$(ProjectDir)NoImpersonate.js" "$(BuiltOuputPath)"
Но когда я это делаю, некоторые папки или журналы ошибок в моем приложении не создаются.
Я надеюсь, что я дал всю информацию. Мне нужно решить эту проблему, и я не знаю, как я могу это сделать.
EDIT:
Я написал неправильный каталог. Это не ApplicationData, каталог - ProgramData. Извините за это.