吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 672|回复: 3
收起左侧

[求助] 如图1所示,用QT实现文件夹与注册表键值的监视容易么?

[复制链接]
冥界3大法王 发表于 2023-3-27 11:00
image.png

[C++] 纯文本查看 复制代码
;注册表键值 与 文件变化监视器!
#NoEnv
#Warn
#SingleInstance Force
SetWorkingDir %A_ScriptDir%

Gui Add, Text, x1 y1 w130 h23 +0x200, 请选择注册表的根路径:
Gui Add, ComboBox, x208 y1 w200 v根键, HKEY_CLASSES_ROOT||HKEY_CURRENT_USER||HKEY_LOCAL_MACHINE
Gui Add, Text, x1 y20 w120 h23 +0x200, 根键以外路径:
Gui Add, Edit, x208 y20 w600 h21 v根键以外路径, Software\Image-Line\Registrations\FL Studio 20.8
Gui Add, Text, x1 y42 w120 h18 +0x200, 请输入要监视的注册表键值名称:
Gui Add, Edit, x208 y42 w600 h16 v键值, ILRegKey
Gui Add, Text, x0 y60 w858 h2 0x10
Gui Add, Text, x1 y68 w120 h23 +0x200, 计时器间隔时间(单位:毫秒):
Gui Add, Edit, x208 y68 w200 h21 v间隔时间, 500
Gui Add, Text, x0 y100 w858 h2 0x10
Gui Add, Text, x1 y104 w150 h23 +0x200, 请输入要监视的文件路径:
Gui Add, Edit, x208 y104 w600 h21 vFilePath, X:\GuitarPro_8.1.0.48
Gui Add, Button, x410 y67 w100 h23  gButton_1, (1)监视注册表
Gui Add, Button, x530 y67 w100 h23 gButton_2 , (2)监视文件夹
Gui Show, w688 h130, 注册表键值与文件变化监视器
return

GuiEscape:
GuiClose:
	ExitApp

Button_1:
	Gui,Submit ,NoHide
	RegRead, 读取到的注册表键值, %根键%, %根键以外路径%, %键值%
	;MsgBox,%读取到的注册表键值%
	;MsgBox,%FilePath%

继续1:
	if 读取到的注册表键值<>''
	{
		SoundPlay,F:\PowerPro_4.9n7\乱七八糟\不错的剪贴板声音.wav
		MsgBox,读取到了注册表键值:%读取到的注册表键值%
		MsgBox,发现目标脚本结束!
		ExitApp
	}
	else
	{
		Sleep, %间隔时间%
		goto,继续1
	}
return


Button_2:
	Gui,Submit ,NoHide

继续2:
	IfExist, %FilePath%
	{
		SoundPlay,F:\PowerPro_4.9n7\乱七八糟\不错的剪贴板声音.wav
		MsgBox,发现目标文件夹`n脚本结束!
		ExitApp
	}
	else
	{
		Sleep, %间隔时间%
		goto,继续2
	}
return

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

MarioCrane 发表于 2023-3-27 11:29
文件夹和文件的监测可以用QFileSystemWatcher,没有注册表监测相关的类,需要自己去实现了
 楼主| 冥界3大法王 发表于 2023-3-27 11:35
MarioCrane 发表于 2023-3-27 11:29
文件夹和文件的监测可以用QFileSystemWatcher,没有注册表监测相关的类,需要自己去实现了

@MarioCrane
有实现的代码吗,姥爷?
对于一个c++饭桶来说。。。
只会简单的复制和修改,因为这个编程工具基本功不达标。
MarioCrane 发表于 2023-3-27 14:29
冥界3大法王 发表于 2023-3-27 11:35
@MarioCrane
有实现的代码吗,姥爷?
对于一个c++饭桶来说。。。

QFileSystemWatcher网上应该有很多例程,在windows平台上其内部是通过一个循环检测的线程调用fileapi实现的。
注册表话Qt没有自带的实现,需要自己写了,有两种方法,使用winreg的RegNotifyChangeKeyValue,或是WMI提供的RegistryKeyChangeEvent。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 02:03

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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