2009-09-02 21 views
3

Click-Onceを使用して配布されるスマートクライアントアプリケーションを持っていますが、ローカルキャッシュのSQLite DBも含まれています。.NET SQLiteとClick-Once Deployment

一度アプリケーションが公開されると、SQLite DBファイルを開くことができないように見えるという問題があります。インストールプロセスの一部としてDBファイルを含めてください...

どのような考えですか?

+0

例外はありますか? – codeConcussion

+0

System.Data.SQLite.SQLiteException:データベースファイルを開くことができません –

+1

展開が完全信頼を要求していますか? – codeConcussion

答えて

3

ClickOnceアプリケーションが「完全信頼」に設定されている場合、インストール時に完全信頼を求めるプロンプトが表示されます。これは、アプリケーションが、アプリケーションを実行しているユーザーと同じ権限(編集、ファイルioなどの編集)を持つことを意味します。コメントでは、アプリが完全な信頼に設定されていると述べています。そのため、セキュリティ上の問題ではないようです。

あなたは確信していますかすべてのファイルが展開されていますか?私はちょうど画像からClickOnceを削除します。デプロイメント内のすべてのファイルを調べて、フォルダを作成し、それらのファイルをすべてコピーしてから実行してください。それは動作しますか?私の最初の推測では、必要なファイルがClickOnceの配備に含まれていないということです。

0

パッケージにSQLiteプロバイダを含めましたか?

+0

はい、dbファイルを開くことができません。デバッグ時にはうまく動作しますが、セキュリティ上の問題になります。 –

1

アプリケーションがデータベースにアクセスするために使用しているパスを確認します。仮想化されたパスは、Vista以上でこの種の問題を引き起こす可能性があります。

次に、データベースファイルの読み取り/書き込みのアクセス許可を確認します。