Доступ к SQLite запрещен - работает локально, но не публично

Когда я получаю доступ к своему сайту ASP.Net IIS (W2K3), я получаю следующую ошибку:

SQLite error Access is denied.

[SQLiteException (0x80004005): SQLite error Access is denied.]

Это происходит, когда я звоню:

Object retVal = new System.Data.SQLite.SQLiteCommand("SELECT load_extension('libspatialite-4.dll');", conn).ExecuteScalar();

Когда я использую Visual Studio, все работает отлично.

Так что в этом случае я могу исключить любые проблемы с DLL. Все непространственные запросы SQLIte также отлично работают в IIS и Visual Studio.

Я уверен, что мне нужно установить разрешение где-то, но где и какой пользователь.

1 ответ

Решение

Похоже, папка Spatiallite находится в вашем пути, а не в системном пути. Также дважды проверьте идентификатор пользователя, который используется для IIS. Это может отличаться от ASP.NET.

Если это не сработает, попробуйте выполнить мониторинг на сервере с помощью монитора процессов. http://technet.microsoft.com/en-us/sysinternals/bb896645 Следите за ошибкой, в которой отказано в разрешении, и вы должны идти по правильному пути.

Другие вопросы по тегам