AppDomain.CurrentDomain.BaseDirectory会根据app's目标平台而改变

本文关键字:目标 平台 改变 BaseDirectory CurrentDomain app AppDomain | 更新日期: 2023-09-27 18:14:19

我将这个路径设置为应用程序根目录的路径。
它工作完美,直到我决定改变我的System.Data.SQLite.dll库和我的应用程序为32位而不是64位(我最初改变,因为我下载了64位版本的sqlite库。

private string fullPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "testdb.db");

问题是,在启动时,有一个错误说access to "C:/Program Files (x86)/Microsoft Visual Studio 11.0/IDE/test.db" is denied,这意味着AppDomain.CurrentDomain.BaseDirectory以某种方式引用该目录而不是我的应用程序的根目录。

这可能是什么原因?

:显然,将应用程序平台目标更改为x64,并使用64b版本的SQLite可以解决这个问题…

AppDomain.CurrentDomain.BaseDirectory会根据app's目标平台而改变

我认为这是因为您在Visual Studio中托管的调试模式下通过按F5启动了应用程序!