无法正常工作:Application.StartupPath

时间:2014-04-24 10:38:06

标签: c# .net install startup

我有一个使用Visual Studio 2012创建的C#程序。使用Install Shield的性别安装程序,事实证明,在查找数据库的路径时,程序始终生成路径...虽然我的计算机在其他地方运行它电脑。

我不明白为什么会这样,因为我使用了函数:

Application.StartupPath 

这应该是每个用户运行程序的路径。

为什么它无法正常工作?

1 个答案:

答案 0 :(得分:1)

这可能是权利问题。如果程序通过UAC在有限权限“沙盒”中运行,则可能会发生路径不同,因为Shadow-Copy等。

您可以尝试使用以下内容:

System.Reflection.Assembly.GetExecutingAssembly().Location

<强> BUT

将DB保存在应用程序文件夹中是否明智?如果用户不是管理员,他就不能写在那里=&gt;应使用%APPDATA%,例如, Modify path string to improve robustness