Невозможно открыть файл базы данных, когда приложение установлено в Program Files в Windows 7 - PullRequest
0 голосов
/ 10 октября 2018

У меня есть приложение для рабочего стола PHP.Это приложение успешно установлено и протестировано в Windows XP, однако существует проблема, когда оно устанавливается в Windos 7 в папке c: \ Program Files \ myApp, файл базы данных не может быть открыт и приводит к сообщению об ошибке:

SQLite3 :: query: Невозможно открыть файл базы данных в C: \ Program Files \ myApp \ www \ checkLogin.php

Примечание: - Моя база данных находится в том жеlocation как скрипт PHP, т.е. www \ myDatabase.db.

Код, который я использовал для подключения к базе данных: -

class MyDB extends SQLite3 
 {
    function __construct() 
    {
      $this->open('myDatabase.db');
    }
 }
 $db = new MyDB();

 if(!$db) 
 {
   echo $db->lastErrorMsg();
 }

Если переустановить приложение в каком-то другом местескажем, C: \ myApp, проблем нет, и приложение успешно работает.

(Лично я считаю, что это скорее проблема безопасности операционнойСистема.)

Итак, что вызывает отстранение файла базы данных от открытия в папке Program Files?И что для этого нужно преодолеть?

1 Ответ

0 голосов
/ 10 октября 2018

Обычно рекомендуется устанавливать непосредственно на ваш корневой диск. Пример C:\myApp это связано с тем, что настройка windows User Account Control препятствует определенным функциям для защиты вашей системы.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...