在 AppData 文件夹中加载表单时的相对引用

Relative references when form loads in AppData folder

我有一个可以从 U 盘、家用电脑或工作电脑加载的表格。表单可执行文件始终存储在“some path\National Payroll\Build* 中,并在“some path\National Payroll”中引用数据库.

某些路径部分发生变化,但数据库始终在父目录中。我已经尝试了其他建议来获取表单的路径,但我似乎只能获取表单打开时运行的本地 AppData 文件夹的路径,而不是表单可执行文件的路径。我如何获得它?

Application.StartupPath

并且,最终 Application.StartupPath.Parent

编辑:测试报告

创建一个新项目。添加一个表单,其中包含两个名为 StartupPathExecutablePathTextBoxes。在窗体的加载事件中放入以下代码:

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    StartupPath.Text = Application.StartupPath
    ExecutablePath.Text = Application.ExecutablePath
End Sub

在 USB 闪存驱动器(或任何您想要的地方)上编译和部署可执行文件,然后双击。将产生此输出: