0

这是我当前的代码:

RegistryKey registryKey = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
                registryKey.SetValue("Programname", Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData));

这没有错误或任何东西,但它并不指向我的程序。相反 Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) 指向我的 AppData 文件夹(如预期的那样)。但是,我该如何将其指向该文件夹中的可执行文件?

我正在使用 C# 2.0

4

1 回答 1

0

你需要使用

System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName

或者

System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase

获得路径..

所以它会是:

RegistryKey registryKey = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);
                registryKey.SetValue("Programname", System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName);
于 2012-08-18T04:56:54.913 回答