0

デスクトップ コンピューターで実行する Windows フォーム アプリケーションを開発しました。

これは、Microsoft Access をデータベースとして使用する c# で記述された単純なシステムです。

コードをほぼ完成させ、他のシステムにインストールするためのセットアップ ファイルを作成しようとしていました。

セットアップ ファイルを作成してシステムの 1 つにインストールしましたが、残念ながらアプリケーションがデータベースを見つけることができず、次のエラーがスローされます。 アプリケーション実行時のエラーメッセージ

プロジェクトのルート フォルダーにデータベース ファイルを配置しました。

ここに画像の説明を入力

アプリケーション全体で次の接続文字列を提供しました。

App.Config で

configuration>
    <configSections>
    </configSections>
    <connectionStrings>
        <add name="Database" connectionString="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database.accdb;Persist Security Info=False;"
            providerName="System.Data.OleDb" />
 </connectionStrings>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
    </startup>
</configuration>

アプリケーションクラスで

string connString = ConfigurationManager.ConnectionStrings["Database"].ConnectionString;

セットアップ ファイルを作成したのはこれが初めてで、どこが間違っているのかわかりません。

誰かが私の質問に対する答えを見つけることができますか?

4

1 に答える 1

0

プログラムのインストール時にこのエラーが表示されるとおっしゃいました。構成ファイル (接続文字列を読み取っているファイル) がインストール フォルダーにないと思います。インストール設定 (出力ファイル、構成など) に問題がある可能性があります。画像にあるように、プロジェクト全体がProgram Filesフォルダーに入っています。これは、インストール用にソース フォルダー全体を選択した証拠です!

インストール用のフォルダーのみを選択するか、Visual Studio 展開プロジェクトを使用している場合は、フォルダーに配置されるファイルをbin\Debug選択する必要があります。Project OutputProgram Files

于 2013-02-21T12:18:27.610 に答える