0

正しく動作するプログラムがあり、プログラム内からデータベースにアクセスできます...しかし、私の問題はこれです...データベースは私のコンピューターのどこにもありません...少なくとも私が見つけることができる場所。すべての .db ファイルを検索しようとしましたが、そこにはありませんでした。このファイルを作成中のプログラムに追加してコピーし、別の場所にバックアップできるようにしたいと考えています。しかし、私はそれを見つけることができません。インストーラーを使用して、自分の名前でファイルをプログラムするように正しくインストールします。これも機能し、プログラムが実行され、データベースから読み取られます。接続を開こうとしてファイルが存在しない場合、sqliteはデータベースを作成するため、データベースを作成するために使用するコードは次のとおりです。B

で確認します

public void createDB()
    {
        string path = Path.GetDirectoryName(Assembly.GetAssembly(typeof(sqlLib)).CodeBase);
        string[] brokenPath = path.Split('\\');
        path = "";
        for (int i = 1; i < brokenPath.Length; i++)//parse file name and rebuild to remove wrong chars
        {
            path += brokenPath[i];
            if (i < brokenPath.Length - 1)
                path += "\\";
        }

        MessageBox.Show(path);

        if (!File.Exists(path += "\\fman.db"))
        {
            MessageBox.Show("File doesn't exist");
            SQLiteConnection db = dbConnect();
            popDB(db);
            dbClose(db);
        }

繰り返しますが、うまくいきます...

Andsでデータベースを作成します

static public SQLiteConnection dbConnect()
    {
        string ConnectString = "Data Source = fman.db;";
        SQLiteConnection db = new SQLiteConnection(ConnectString);
        db.Open();
        return db;
    }

そのため、データベースに問題なくアクセスしてファイルに読み書きすることはできますが、ファイルがどこにも見つかりません。デバッグ モードで作業している場合、それは bin/debug ファイルにありますが、インストールするとどこに行くのでしょうか?

助けが必要な場合は、事前に親切に教えてください

4

1 に答える 1

2

これは私にも起こったとき、かなり長い間頭を悩ませていました。

AppData\Local\VirtualStore最終的に、プロファイルのフォルダーにデータベース ファイルが見つかりました。

于 2012-08-28T03:21:57.520 に答える