C# - Properties.Settings.Default 在 Windows 启动
C# - Properties.Settings.Default on Windows Startup
我有一个 C# 程序,它通过 SOFTWARE\Microsoft\Windows\CurrentVersion\Run
中的条目在启动时运行。启动时,它似乎无法读取 Whatever.exe.config
(设置文件)。
我知道启动时的 "current dir" 在 %windir%
中的某处。目前,我正在尝试通过连接配置文件名和 Application.ExecutablePath
来加载配置文件,但我不确定如何实现它。
如何在 Windows 启动时使用 Properties.Settings.Default
?
编辑: 我在 HKCU。我正在使用 Registry.CurrentUser.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run", true);
不要自己加载文件,不要管路径!
Microsoft .NET 设置机制为您完成了这一切。应用程序启动时将自动读取设置文件。并且将从用户的个人资料中读取用户设置。
你没有说的是应用程序是通过用户的注册表项 (HKCU) 启动还是通过机器 (HKLM) 启动。如果您有用户设置,它们将在当前用户的目录中查找。这意味着当 运行 未使用登录的应用程序时,事情可能无法按预期工作。
我有一个 C# 程序,它通过 SOFTWARE\Microsoft\Windows\CurrentVersion\Run
中的条目在启动时运行。启动时,它似乎无法读取 Whatever.exe.config
(设置文件)。
我知道启动时的 "current dir" 在 %windir%
中的某处。目前,我正在尝试通过连接配置文件名和 Application.ExecutablePath
来加载配置文件,但我不确定如何实现它。
如何在 Windows 启动时使用 Properties.Settings.Default
?
编辑: 我在 HKCU。我正在使用 Registry.CurrentUser.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Run", true);
不要自己加载文件,不要管路径!
Microsoft .NET 设置机制为您完成了这一切。应用程序启动时将自动读取设置文件。并且将从用户的个人资料中读取用户设置。
你没有说的是应用程序是通过用户的注册表项 (HKCU) 启动还是通过机器 (HKLM) 启动。如果您有用户设置,它们将在当前用户的目录中查找。这意味着当 运行 未使用登录的应用程序时,事情可能无法按预期工作。