C# 使用c将应用程序添加到注册表以在启动时运行#

C# 使用c将应用程序添加到注册表以在启动时运行#,c#,registry,startup,C#,Registry,Startup,我已经为启动时运行添加了此代码 public static void AddApplicationToStartup() { using (RegistryKey key = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true)) { key.SetValue("My Program", "\"" + Application.Execut

我已经为启动时运行添加了此代码

public static void AddApplicationToStartup()
{
    using (RegistryKey key = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true))
    {
        key.SetValue("My Program", "\"" + Application.ExecutablePath + "\"");
    }
}
我在主函数的第一行调用了这个函数。
问题是每次都会运行。但在调用函数设置注册表项之前,我们如何检查此应用程序是否已添加到注册表???

。使用以下命令检查现有注册表:

Registry.GetValue(keyName, valueName, defaultValue);

MSDN参考:

请在程序中添加配置设置,允许用户禁用该功能(您可以通过使自动运行条目使用空字符串来保存设置)。不这样做是非常恼人的。