C# 写入注册表项开机启动,执行未报错,却找不到写入结果的原因。

[软件开发] 季雨林 2023/1/14 13:46:07

利用windows的注册表,进行写入相关配置,来实现开机启动的方式


具体写入代码:

RegistryKey rKey = Microsoft.Win32.Registry.LocalMachine; 
RegistryKey reg = rKey.CreateSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run");
//创建或者修改用这句
reg.SetValue(keyName, absolutePath);
//删除
//if (reg.GetValue(keyName) != null)
//{
//reg.DeleteValue(keyName);
//}

操作成功,但是查看,具体注册表项目:

计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

发现没有自己写入的值。

通过关键字搜索,发现实际写入路径:

计算机\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run


仔细对比,发现多出来一个路径“WOW6432Node”,这是因为启用了首选32位编译导致的,修改位置:

解决方案资源管理器,鼠标选择项目,右键“属性”,左侧tab“生成”,常规里,去掉勾选“首选32”位



原文地址: https://www.opengps.cn/Blog/View.aspx?id=1023 文章的更新编辑依此链接为准。欢迎关注源站原创文章!

评论

暂无评论!

发表评论:

用于接收作者回复信息
点击更换验证码 - openGPS提示