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

问题描述 投票:2回答:2

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

c# setup-project
2个回答
2
投票

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


0
投票

好。我知道这是一个老问题,但我认为解决方案有点不明确。我有同样的问题,你不必将app.config(your.exe.config)放入系统文件夹。如果你想保持程序的可移植性而没有MSI,你可以简单地在表格中添加一些代码。

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

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

© www.soinside.com 2019 - 2024. All rights reserved.