一定要定义注册表主键,否则检测无效。
Name "检测注册表键是否存在"
OutFile "检测注册表键是否存在.exe"
;定义注册表主键
!define HKEY_CLASSES_ROOT 0x80000000
!define HKEY_CURRENT_USER 0x80000001
!define HKEY_LOCAL_MACHINE 0x80000002
!define HKEY_USERS 0x80000003
Section
Pop $R1
Pop $R0
System::Call "*(i 0) i .R0" ;为键的句柄创建一个缓存
Push "Software\Daum\PotPlayerMini64\Positions" ;将要检测的键放入内存中
system::call 'Advapi32::RegOpenKey(i ${HKEY_CURRENT_USER}, t s, i R0) .iR1' ;调用API进行检查,返回值在$R1中
system::call 'Advapi32::RegCloseKey(i R0)' ;关闭该键的句柄
system::free ;释放内存
;返回值:
;0代表键存在
;2代表键不存在
;其它值表示出错
MessageBox MB_OK "$R1"
SectionEnd
评论 (0)