我有一个32为程序,有一个功能就是打开注册表HKEY_LOCAL_MACHINE分支往里面写入数据,一般情况下均正常。可是在某些(个别)的Win7 64位系统下,打开注册表会失败,采用的是CRegKey的Open方法,reg.Open(HKEY_LOCAL_MACHINE, T("SOFTWARE\Microsoft\Windows\CurrentVersion\Run"))。但是如果打开64位注册表则成功,reg.Open(HKEY_LOCAL_MACHINE, T("SOFTWARE\Microsoft\Windows\CurrentVersion\Run"), KEY____ALL_ACCESS | KEY_WOW64_64KEY)。求教此问题是怎么回事,并不是所有Win7 64位系统都有问题,只是个别的会出现无法打开32位注册表
2条回答
- oyljerry 2017-09-01 04:30关注
一般你32位程序如果要访问64位系统,最好自己指定是访问64位注册表路径还是wow3264下面的。不然就依赖系统帮你重定向,这个可能有些系统就有问题了。
解决 无用评论 打赏 举报
悬赏问题
- ¥30 这是哪个作者做的宝宝起名网站
- ¥60 版本过低apk如何修改可以兼容新的安卓系统
- ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
- ¥50 有数据,怎么建立模型求影响全要素生产率的因素
- ¥50 有数据,怎么用matlab求全要素生产率
- ¥15 TI的insta-spin例程
- ¥15 完成下列问题完成下列问题
- ¥15 C#算法问题, 不知道怎么处理这个数据的转换
- ¥15 YoloV5 第三方库的版本对照问题
- ¥15 请完成下列相关问题!