2

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

4

2 回答 2

2

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

于 2009-05-07T13:32:23.633 回答
1

行。我知道这是一个老问题,但我认为解决方案有点缺乏清晰度。我遇到了同样的问题,您不必将 app.config (your.exe.config) 放入系统文件夹中。如果你想保持你的程序可移植并且没有 MSI,你可以简单地在表格中输入一些行。

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

在您的表单课程中尽早执行此操作,它将起作用。

于 2019-03-02T07:14:19.233 回答