在Windows启动时运行时,应用程序找不到app.config文件

时间:2009-05-07 13:29:10

标签: c# setup-project

最近,我在我的应用程序中添加了一个安装项目。在安装项目中,我添加了一个注册表值,该值将在Windows启动时启动我的应用程序到HKLM \ Software \ Microsoft \ Windows \ CurrentVersion \ Run键。当应用程序从此位置运行时,它会因System.NullReference异常而崩溃(它无法找到我的app.config文件,当应用程序加载时会在方法中读取该文件)。我可以从开始菜单或已安装的文件夹中完美地运行应用程序。如何让我的应用程序在Startup上运行?

2 个答案:

答案 0 :(得分:2)

我相信将以系统文件夹作为工作文件夹运行。将配置文件放在系统文件夹中或确保设置工作文件夹应解决问题。

答案 1 :(得分:0)

好的。我知道这是一个老问题,但是我认为解决方案有点不够清晰。我遇到了同样的问题,您不必将app.config(your.exe.config)放入系统文件夹。如果您想让程序具有可移植性并且没有MSI,则只需在表格中添加几行即可。

APP_PATH = Application.ExecutablePath.ToString();
Environment.CurrentDirectory = Path.GetDirectoryName(APP_PATH);

在表单类的早期进行此操作,它将起作用。