- 博客(19)
- 资源 (4)
- 收藏
- 关注
原创 解决warning: The vcpkg E:\vcpkg\vcpkg.exe is using detected vcpkg root E:\vcpkg and ignoring mismatche
系统的程序会加载注册表,而vcpkg一眼看去就是微软开发的,所以微软有活可以加载到 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\vcpkg这个文件夹(这里有vcpkg)。显然不会的,VCPKG_ROOT的定义一定是有判定条件的,这个条件一定与文件夹vcpkg的名称是vcpkg是与的关系,只有文件夹vcpkg的名称是vcpkg的时候VCPKG_ROOT才会被定义。那么既然set打印的都是环境变量,我就把环境变量全删了不就好了?
2024-01-13 21:13:09
1019
1
原创 windows启动的都做了什么,注册表--环境变量篇
因为我在安装了vcpack的时候visual studio在之前已经安装了vcpack或者是我在什么不知名的时候安装的,导致每次我运行vcpack.exe的时候系统都会提示vcpkg_root(可能是大写,也可能名字有所出入)已经在系统变量里有了,但我检查了环境变量,包括用户变量和系统变量,但是都没有。注册表的数据从哪里来?像我这要的环境变量(用户变量+系统变量)是没办法在任意地方执行某个exe的,只能在有exe的文件夹下执行exe程序,同时这个设置开机还可以但是加载工具栏和其它某程序会比较耗时。
2024-01-13 10:34:15
443
1
原创 揭密QTransform &QTransform::translate(qreal dx, qreal dy)算法
好像是按150,150旋转了-30度,事实上也的确如此,两个平移的路径是平行的,可以衍生出新的点的x,y相对于150,150的变化与左上角x,y与0,0的变化是相同的。主意,这里从来没有出现过旋转半径的不同,从来都是绕0,0旋转后平移,不信的话可以亲手乘一乘,150从来没有参与cos/sin的相乘,都只是影响了平移的两个位置,m31,m32。经过我的多少实现,其实数学好的人的显而易见的,它是前乘。肉眼可见,是先以0,0缩放,再平移150,150,再以0,0旋转-30°但是结果是与反过程相同的。
2024-01-06 11:22:58
1064
2
原创 Qt--用QTransform+QPainter+paintEvent+timerEvent实现旋转动画
这里实现的比较简单,本来想完成雪花旋转,冰片在末端消逝的样子,但是代码太长了说明不了问题,前提是要理解 QTransform &QTransform::scale(qreal sx, qreal sy)、QTransform &QTransform::rotate(qreal angle, Qt::Axis axis = Qt::ZAxis)、QTransform &QTransform::translate(qreal dx, qreal dy)。可以检查我们Qt程序是否在顺畅的运行,w对象。
2024-01-03 15:32:24
648
1
原创 Qt中QTransform的translate和rotate实现过程
这三行的代码的意图是让坐标系中的点绕150,150旋转-15°。那第三行为什么要回到原来的位置,因为图像中的点都平移了150,150,需要消减这个影响。|150 150 1|这个乘法的效果是平移了150,150后以150,150为轴旋转,或者先旋转后平移也能说的通而。当然此时的原点已经不是0,0了,而是-33.7117,43.934,可见0,0是按150,150旋转了-15。°的,x变小y变大了。也就是0,0,1与结果矩阵的积,原坐标系的0,0在现坐标系中是。
2024-01-02 16:27:37
1624
1
原创 给qt造个轮子--用qlabel控件标记地理位置
这里的地理信息不是广义上的地理信息,专门指Qt中的位置和宽高,但是Qt中的位置是左上角的位置,这本来也没什么,只是我们以后用view什么类的时候怎么知道我是否放对了位置呢?所以我就做了这个类,用来标记像素点的位置。但是还是繁琐,想把它单独封装成一个类,甚至一个控件,其实控件本身就是类。本来也想做一个从ui界面拖动的控件,但是Qt6.5的自定义控件不好用,可能还是我理解的有问题吧。其中 Widget w中什么也没做,qlabel和qframe也不能重绘,效果如顶页的图,标记了中心用红点表示,和四个角的坐标。
2023-12-31 18:18:24
414
1
原创 QApplication的故事
继承完QGuiApplication后引入一个Q_OBJECT宏,用Ctrl+鼠左进入是qobjectdefs.h,这个Q_OBJECT是在qapplication.h引入的头文件QtCore/qcoreapplication.h里#include <QtCore/qcoreapplication.h>,但又不是直接在qcoreapplication.h里,而是在qcoreapplication.h引入的头文件qobject.h里,qobject.h则直接引入了qobjectdefs.h。
2023-06-18 17:57:46
258
原创 gitHub上openbroad白板编译遇到的坑
之后,在Qtcreator中构建就可以了,如果有问题可以试图把build-OpenBoard-Desktop_Qt_5_15_2_MSVC2019_64bit-Debug文件夹删了,但是大项目的构建时间还是比较长的。仔细找在readme.md中是有source源码安装的方法的,那个基本是上release版的,打断点不是很低方便,这里强调一点debug不能用nmake makefile.release生成的文件,因为缺调试信息。这就要用到qtcreater自带的qmake工具了,
2023-06-17 20:19:53
241
1
原创 Qt,Qt Creator,make,qmake,cmake,nmake,g++,gcc,cl,link,MinGW,MSVC之间的关系
c/c++在不同的平台上源代码没有变,那怎么让你的程序可以运行在不同平台上,了解标题述中的之间关系,可以加深对Qt跨平台的理解。Qt是c++的子类,从框架的角度make,cmake,nmake都是执行g++,生成目标代码再链接。由于cmake目前接触比较少这里不讲,win和linux平台外的也没有接触,用到了再说。Qt Creater与Qt,MSVC,MinGW的关系图。Qt Creator在windows下的编译流程图。
2023-05-31 12:44:33
370
原创 pip出现assert _sre.MAGIC == MAGIC, “SRE module mismatch“
如图,由于不知道对pip做了什么也很久没管这个,只见python36环境下运行了python37的pip,很奇怪。原因是python37的上一级目录中有个pyvenv.cfg,删掉就正常了。
2023-04-16 16:52:16
1423
原创 uipath中UiPath.Python.Activities的坑
UiPath.Python.Activities是在uipath中运行python代码的依赖,现版只有1.6和1.4.然而这两个都不好用,前者无法进入do执行(F11)第二个不断要求我安装.net。只有1.1.68****好用。然而在现版上无法下载。我只好从官方下载example,基于这个example做python代块/脚本的流程化,地址是。中的example链接,
2023-04-14 16:34:02
299
2
原创 Fiddler中TextWizard的Encodings用法
TextWizard是Fiddler文本编解码工具,用来测试极为方便由于对其的其他功能网上已经很多,这里只介绍Encodings的用法,由于字符集和字符编码是比较抽象的,所以本文介绍的是研究方法,少有结论。首先转换格调为HexEncode,十六进制编码,即为字符最基础的编码ASCII码,或类ASCII码(超出ASCII中的128字符的用类似于ASCII码的方式编码,一符一码),输入:中”,Input选GB2312,就经过了GB2312编码处理,处理的结果为D6D0,D6D0的base64编码为1tA=;
2023-03-04 14:53:16
440
原创 wps查字符编码遇到的坑
但是在wps中无论什么时候敲入d6d0都无法得到"中",无论你选的来自“Unicode(十六进制)”还是“简体中文 GB2312(十六进制)”,但是无论你选的来自“Unicode(十六进制)”还是“简体中文 GB2312(十六进制)”敲入4e2d都会得到"中",可见在敲编码得字符的方式中Unicode是相对于这两个编码的唯一入口,切换“简体中文 GB2312(十六进制)”只是为了得到GB2312编码。基于以上特性可以利用Unicode中有的字符来测试GB2312中不存在的字符,如“䶵”。
2023-03-04 13:00:50
1466
原创 手机通过nat连接虚拟机的mitmproxy
同一网段的手机与虚拟机的连接很容易,但是要给用到无线网卡,虚拟机还要装无线网卡的驱动,主要是我没带无线网卡,用了一天时间将手机虚拟机的mitmproxy连接起来实现mitmproxy代理。上面8080端口就是手机填的端口号,信息通过下面的虚拟机的ip地址192.168.136.128的8080端口号接收,就是mitmproxy接收,具体通过什么发出去的我也不清楚。我就曾想把用修改ip的方法nat的VMnet8混进本地连接*2和本地连接共享VMnet8的方法把手机的ip与虚拟机的拉到一个层里,但是都失败了。
2023-03-01 19:20:17
1271
原创 Couldn‘t find ffmpeg or avconv - defaulting to ffmpeg, but may not work快速解决办法
由我在学大学计算机基础课想敲如下代码,结果提示Couldn‘t find ffmpeg or avconv - defaulting to ffmpeg, but may not work,并且提示文件没有找到。根据网上大牛的说法,pip install pydub不好使,以及其他的坑也鉴于我的水平有限,也懒得设置环境变量,见有人直接把那三个exe丢到同文件夹下的操作,我索性便试了试,结果出乎意料的好。也许我的方法不够正统,复用性较差,但是浅学够用了。
2023-02-27 19:30:46
1800
1
原创 如何利用Airtest爬取指定好友的微信朋友圈
本文介绍如何用Airtest爬取指定好友的微信朋友圈,爬取内容为文字,表情,缩略图,最后输出html,主要应用div标签。双击html,图片是链接到文件夹里的,如果相对位置不变在手机上可以打开,效果如下,快把结果发给你的女朋友吧!跑起来,直到完全跑完,在底部有判断,如果到底则停止滑动,程序停止。得到如下结果,一个是html,一个是装有缩略图的文件夹。将Airtest与手机连接(点connect)打开一个好友的朋友圈,这里打开一全是广告的。新建一个air文件贴入如下代码。用数据线将手机与电脑连起来。
2023-02-27 11:34:04
1044
3
原创 五笔输入法之记忆方法,一张图
正文来了,箭头的尾部为内,头部为外,每区五个键,捺与点相等,由内到外的第二笔分别为横、竖、撇、点、折,这是字根排列逻辑。重杂字,四个键录不完的(五笔只用4个键编码),先录前三个,最后一个用最后一笔代替表示录完。前言,五笔输入法与拼音输入法之间的关系,抛开效率,对于程序员来说,五笔输入法是另一种输入方式,拼音输入法尽管不会有太多效率损失,但是五笔输入法可以更快的发现中文输入的错误,一旦入错便会与你的语义大相径庭,比如我输入了wubi无比和ggtt五笔就大有不同可以快速检查出语义的不同。
2023-02-25 16:25:53
710
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人