VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 877|回复: 4

请问如何从RegSetValueExW(HKEY hKey, LPCWSTR lpValueName, DWORD Reserved, DWORD dwType, CONST BYTE* lpData, DWORD

[复制链接]

1

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-1-19 12:00:01 | 显示全部楼层 |阅读模式
也就是说如何知道当前修改的HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SystemService下面的值?谢谢!!
回复

使用道具 举报

0

主题

10

帖子

9.00

积分

新手上路

Rank: 1

积分
9.00
发表于 2020-1-26 19:00:01 | 显示全部楼层

先要通过 RegOpenKeyEx 函数打开!
回复

使用道具 举报

0

主题

20

帖子

21.00

积分

新手上路

Rank: 1

积分
21.00
发表于 2020-1-27 13:36:02 | 显示全部楼层
CString StrFilter="可执行性文件(*.exe)|*.exe|所有文件(*.*)|*.*||";
        CFileDialog Dlg(TRUE,NULL,NULL,NULL,StrFilter,this);
        if(Dlg.DoModal()==IDCANCEL)
                return;
HKEY hKey;
LPCTSTR StrKey=
        "HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Services\\SystemService";
if(ERROR_SUCCESS==
        ::RegOpenKeyEx(HKEY_CURRENT_USER,StrKey,NULL,KEY_ALL_ACCESS,&hKey))
        {
                CString Value=Dlg.GetPathName();
                LPCSTR KeyValue=Dlg.GetFileTitle();
                if(ERROR_SUCCESS==::RegSetValueEx(hKey,(LPCTSTR)KeyValue,0,REG_SZ,
                        (BYTE *)(LPCSTR)Value,strlen(Value)+1))
                {
                        AfxMessageBox("设置程序为系统启动时自动运行!");
                }
                //::RegDeleteValue(hKey,(LPCTSTR)KeyValue);
                ::RegCloseKey(hKey);
        }
回复

使用道具 举报

1

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
 楼主| 发表于 2020-1-27 19:45:01 | 显示全部楼层
您们误解了我的意思,我现在是要做一个HOOK,拦截RegSetValueEx,如果hKey要修改的是我自己的注册表项,就返回错误的值,所以只能从hKey知道要修改的项。
回复

使用道具 举报

0

主题

24

帖子

19.00

积分

新手上路

Rank: 1

积分
19.00
发表于 2020-2-2 12:00:02 | 显示全部楼层
RegMon专门干这个的。

用到的技术可能是HOOK。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表