hook注册表返回特定的值

By admin at 13 天前 • 0人收藏 • 126人看过

感谢: netfox提供源码


import raw.apiHook;
var thread2 = raw.apiHook(
	"advapi32.dll",
	"RegQueryValueExW",
	"int(addr hKey,ustring name ,INT Reserved ,ptr dwType ,ptr lpData ,INT lpcbData )", 
	function( hkey,name,Reserved,dwType,lpData,lpcbData ){
		if(name == "abc"){
			text = string.toUnicode("HFFCICCHGPINHIIDHFGHGQGQHHHXXGID");
			//这里的lpData指针得注意的是, 注册表的项必须存在,才会有指针,不然指针为空
			if(lpData){
				//hook注册表应该注意的地方,这个类型必须给着返回
				raw.copy(dwType,{int value=1});
				//raw.copy等价于::copyMemory
				raw.copy(lpData,text,#text*2);//这里的Unicode编码长度要*2
				//::CopyMemory(lpData,text,#text*2);
				//这个数据可以修改,可以不改(网上其他语言貌似必须修改)
				//raw.copy(lpcbData,{int value=#text});
			}
			return 0;
		}
		return owner.callApi(hkey,name,Reserved,dwType,lpData,lpcbData); ;
	}
);
thread2.install();


登录后方可回帖

登 录
信息栏
公告:
个人博客
专注分享
可在分享中适当提问
谢绝纯提问
否则不再提醒一律
删帖
谢谢合作!



本站域名:HtmLayout.Cn
aardio可以快速开发上位机,本站主要记录了学习过程中遇到的问题和解决办法及aardio代码分享

这里主要专注于aardio学习交流和经验分享.
纯私人站,当笔记本用的,学到哪写到哪.

Aardio 官方站:Aardio官方
Aardio最新功能:Aardio官方更新日志
本 站 主 站:Stm32cube中文网
Sciter中文在线文档Sciter在线学习文档
空间赞助:才仁机械
Loading...