自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

C语言专栏

C语言专栏

  • 博客(92)
  • 收藏
  • 关注

原创 怎么设置Node-RED用户名与密码

可以看到,这里的用户名就是前面代码中的admin,但是密码不是代码里的password,代码中的password是一段是经过bcrypt算法对密码进行了加密的密文,所以我们要用自己的明文密码生成一段密文,然后粘贴到代码中的password处。将想要使用的密码输入,然后工具就打印出可以复制到设置文件中的加密过的密码。将生成的密码粘贴进代码中的password处即可,也可自行更改用户名,更改后保存。通过系统命令行启动node-red,在浏览器中输入刚刚设置过的用户名及密码登入。第四步:登入Node-RED。

2023-02-17 13:33:49 2446 1

原创 linux安装node-red并设置开机启动

一、安装node-red。

2023-02-17 11:06:33 1863

原创 linux安装frp实现内网穿透及开机启动

【代码】linux安装frp实现内网穿透及开机启动。

2023-02-15 14:39:58 3791 2

原创 Electron程序逆向(asar归档解包)

要学习Electron逆向,首先要有一个Electron开发的程序的发布的包,这里就以其官方的electron-quick-start作为例子来进行一下逆向的过程。在本小节的最后抖个机灵,我们当然也可以靠Electron界面所特有的浓浓的Electron风格来辨识Electron开发的程序。)将electron打包出来的exe文件修改为zip后缀,并用压缩文件解压,观察解压出来的结构使用工具解压就可以了,先安装这个工具01然后命令行进入到asar所在的文件夹,解包它01。...

2022-07-20 18:52:28 12942

原创 在安卓模拟器(mumu为例)上联调app并且用Charles抓包

3.点击首页的设置里面的Wi-Fi进入后长按上面自动显示连接的Wi-Fi,设置高级里面设置代理,IP设置自己的电脑的IP,port端口设置8888,这个值是要和在Charles里面设置的代理端口一致。1.把自己需要设置的app的apk的包装到mumu上,可以直接把apk的包直接拖到启动的mumu的首页就会自动安装了;2.配置讯飞输入法为mumu的默认输入法,双击下载的讯飞跟着步骤设置就可以了;最后先打开Charles再打开app就可以看到抓到的数据了。一下载mumu模拟器和Charles抓包工具。.....

2022-07-20 18:48:54 3441

原创 windows安装frp实现内网穿透及服务自启动

2.按下windows+R输入cmd进入命令窗口,进入到安装目录下运行frps.exe-cfrps.ini.2.按下windows+R输入cmd进入命令窗口,进入到frp解压目录下运行frpc.exe.1、首先去frp下载网站下载对应的版本,我这里下载的是windows64位v0.27.0。如果服务端有防火墙一定要增加入栈规则,类型选择应用程序。否则肯能客户端无法连接到服务器。2、frp的安装就比较简单了,将下载好的安装包直接解压到相应目录就可以了。环境一台公网winserver服务器。.........

2022-07-15 18:24:23 8207

原创 最全的package.json解析

文件使npm可以启动你的项目、运行脚本、安装依赖项、发布到NPM注册表以及许多其他有用的任务。该字段是一个对象,用于定义源代码所在的url及其使用的版本控制系统的类型。会在项目的生命周期中扮演多个角色,其中某些角色仅适用于发布到NPM的软件包。它包含名称、描述和版本之类的信息,以及运行、开发以及有选择地将项目发布到NPM所需的信息。中最重要的字段之一,它列出了项目使用的所有依赖项(项目所依赖的外部代码)。文件夹中,并将一个条目添加到你的依赖项属性中,注意软件包的名称和已安装的版本。...

2022-07-15 10:59:20 520

原创 windows下将nginx注册为服务

NSSM是一个服务封装程序,它可以将普通exe程序封装成服务,使之像windows服务一样运行。同类型的工具还有微软自己的srvany,不过nssm更加简单易用,并且功能强大。windows下安装Nginx后,只能通过双击进行来启动,通过任务管理器来停止进程,如果要通过命令行启动Nginx,可将其做成服务。支持普通exe程序(控制台程序或者带界面的Windows程序都可以)可以自动守护封装了的服务,程序挂掉了后可以自动重启。下载地址https//nssm.cc/...

2022-07-15 10:54:28 1623

原创 Windows下安装Redis并注册为服务

1.安装下载地址:https://github.com/MSOpenTech/redis/releases。Redis 支持 32 位和 64 位。这个需要根据你系统平台的实际情况选择,这里我们下载 Redis-x64-xxx.zip压缩包到 D:\Develop目录,解压后,将文件夹重新命名为 Redis。 打开一个 cmd 窗口 使用cd命令切换目录到 D:\Develop\Redis 运行 redis-server.exe redis.windows.conf 。如果想方便的话,可以把 redis

2022-07-08 10:25:28 1892

原创 实例说明 PeekMessage与GetMessage的区别

PeekMessage与GetMessage的对比相同点:PeekMessage函数与GetMessage函数都用于查看应用程序消息队列,有消息时将队列中的消息派发出去。不同点:无论应用程序消息队列是否有消息,PeekMessage函数都立即返回,程序得以继续执行后面的语句(无消息则执行其它指令,有消息时一般要将消息派发出去,再执行其它指令)。GetMessage函数只有在消息对立中有消息时返回,队列中无消息就会一直等,直至下一个消息出现时才返回。在等的这段时间,应用程序不能执行

2021-10-01 20:17:57 1955 1

原创 WinAPI中后缀A和后缀W函数之间有什么区别?

所有涉及字符串的Win32调用实际上都是宏,它们会根据项目的“字符集”属性扩展为Unicode版本或ANSI版本。GetMessage(...)将映射到GetMessageA(...)或GetMessageW(...),其中“ A”版本将处理包含字符串的消息,这些字符串为ANSI格式的文本,而“ W”版本将使用UTF -16。...

2021-10-01 19:43:00 881

原创 Qt 延时处理的方法

这里提供四种方法:1、多线程程序使用QThread::sleep()或者QThread::msleep()或QThread::usleep()或QThread::wait()进行延时处理。Sleep不会释放对象锁,其他线程无法访问对象,因此会阻塞线程;而Wait会释放对象锁,使得其他线程能够访问该对象。2、自定义延时函数:使用QEventLoopvoid Widget::Sleep(int msec){ QTime dieTime = QTime::currentTime().

2021-10-01 19:35:58 588

原创 关于HOOK,如何通过钩子截获指定窗口的所有消息 SetWindowsHookEx

SetWindowsHookEx 第三个参数为HINSTANCE,通过FindWindow找到指定窗口句柄后如何 得到该进程的HINSTANCE呢?这个参数应该是你调用SetWindowsHookEx的DLL的模块实例句柄,它可以经由DllMain入口的第一个参数得到。 HHOOK SetWindowsHookEx(int idHook, HOOKPROC lpfn, HINSTANCE hMod, ...

2021-10-01 19:23:59 2040

原创 .NET 托管、非托管、本地:这些代码有什么区别?

什么是托管代码(Managed Code)?托管代码是 Visual Basic .NET 和 C# 编译器创建。它们编译成中间语言(IL),而不是直接在计算机上运行的机器代码。IL 被保存在一个称为程序集中,以及描述代码的类、方法、和属性(如安全性要求)的元数据文件。在 .NET 里,程序集是“一站式(one-stop-shopping)”部署的单元。可以将程序集直接复制到另一台服务器上进行部署。托管代码运行在公共语言运行库(Common Language Runtime,CLR)。CLR 为正在

2021-10-01 19:20:36 634

原创 Windows API函数PeekMessage

PeekMessage是一个Windows API函数。该函数为一个消息检查线程消息队列,并将该消息(如果存在)放于指定的结构。BOOLPeekMessage(LPMSGIpMsg,HWNDhWnd,UINTwMSGfilterMin,UINTwMsgFilterMax,UINTwRemoveMsg);lpMsg接收消息信息的MSG结构指针。hWnd其消息被检查的窗口句柄。wMsgFilterMin指定被检查的消息范围里的第一个消息。wMs...

2021-10-01 11:41:06 692

原创 Qt 开启进程,查找进程,关闭进程

#include <windows.h>#include <TlHelp32.h>1, 开启进程QString path = qApp->applicationDirPath() + "/../../tools/redis/redis-server.exe";QStringList args;bool ret = QProcess::startDetached(path);if (!ret){QMessageBox::warning(this, QStri

2021-10-01 11:32:57 1965

原创 Qt鼠标悬停按钮样式表

红色样式/* Red Button */QPushButton#RedButton {border-radius: 8px;color: white;padding: 16px 32px;text-align: center;text-decoration: none;font-size: 16px;margin: 4px 2px;background-color: white;color: black;border: 2px solid #f44336;}QPush..

2021-10-01 11:23:42 3201

原创 Linux 上最好的9款视频编辑器

视频编辑器 主要用途 类型Kdenlive 通用视频编辑 自由开源OpenShot 通用视频编辑 自由开源Shotcut 通用视频编辑 自由开源Flowblade 通用视频编辑 自由开源Lightworks 专业级视频编辑 免费增值Blender 专业级三维编辑 自由开源Cinelerra 通用视频编辑 自由开源DaVinci 专业级视频处理编辑 免费增值VidCutter 简...

2021-10-01 11:18:22 1653

原创 Qt中mouseMoveEvent无效

setMouseTracking(true)

2021-09-30 20:05:40 308

原创 Qt去掉最大化、最小化按钮

w.setWindowFlags(w.windowFlags()&~Qt::WindowMaximizeButtonHint&~Qt::WindowMinimizeButtonHint);w.showMaximized();

2021-09-30 19:59:50 513

原创 Qt计算两个时间差

QTime startTime = QTime::currentTime(); QThread::msleep(SLEEP_TIME_MILL); QTime stopTime = QTime::currentTime(); int elapsed = startTime.msecsTo(stopTime); qDebug()<<"QTime.currentTime ="<<elapsed<<"ms";

2021-09-30 19:50:42 2618

原创 Qt程序匹配Windows字体缩放

问题Windows系统提供了字体缩放功能,当字体缩放比率变大时,应用程序也需要做相应的调整来匹配显示结果。Qt提供了一个熟悉来设置是否自动缩放。QApplication::setAttribute(Qt::AA_EnableHighDpiScaling);但在启用这个属性后,只能是整数倍的缩放,比如125%是1倍,150%是2倍。这种效果是不能满足需求的。解决方案可以使用Windows提供的方法GetDeviceCaps来计算字体的缩放比率,然后通过设置环境变量QT_SCALE_FACTOR来设

2021-09-30 18:37:05 1077

原创 Windows API函数大全

1. API之网络函数WNetAddConnection 创建同一个网络资源的永久性连接WNetAddConnection2 创建同一个网络资源的连接WNetAddConnection3 创建同一个网络资源的连接WNetCancelConnection 结束一个网络连接WNetCancelConnection2 结束一个网络连接WNetCloseEnum 结束一次枚举操作WNetConnectionDialog 启动一个标准对话框,以便建立同网络资源的连接WNetDiscon...

2021-09-30 18:08:54 1185

原创 pip install xxx报错的解决方法

在pip install xxx后面加上 -i 国内源,可以完美的解决报红报错等问题阿里云: -i https://mirrors.aliyun.com/pypi/simple/豆瓣:-i https://pypi.douban.com/simple/清华大学: -i https://pypi.tuna.tsinghua.edu.cn/simple/中国科学技术大学: -i https://pypi.mirrors.ustc.edu.cn/simple/...

2021-09-30 17:59:03 367

原创 InstallShield制作安装包,安装后实现自动运行

安装向导完成后,自动运行。实现的手段是:InstallScript脚本OnEnd()函数里面,调用可执行程序。备注:INSTALLDIR预定义变量存放着程序的安装目录。//安装后运行dispatcherstrPath=INSTALLDIR+"dispatcher";strName="Frs.exe";FindFile(strPath,strName,strResult);if(strResult!="") then strPath=strPath+"\\"+strName;

2021-09-29 09:37:09 1072

原创 主键和外键的定义

主键(primary key):一列(或一组列),其值能够唯一区分表中每个行 。外键(foreign key)外键为某个表中的一列,它包含另一个表的主键值,定义了两个表之间的关系

2021-09-29 09:29:44 4605

原创 Qt获取窗口在整个屏幕的坐标

//在对应的控件中显示图片void qm_img::DisplayImg(cv::Mat imgParam, QLabel *labelParam){ if (!imgParam.empty()) { cv::Mat img_index1 = imgParam.clone(); //cvtColor(img_index1, img_index1, cv::COLOR_BGR2RGB); QImage qimg1 = Mat2QImage(.

2021-09-29 09:27:20 792

原创 Qt 图像缩放显示(饱满填充、按比例缩放)

QImage Image; Image.load(":/images/f1.png"); QPixmap pixmap = QPixmap::fromImage(Image); int with = secene->width ();//要显示的宽度 int height =secene->height (); QPixmap fitpixmap = pixmap.scaled(with, height, Qt::IgnoreAspectRatio, Q.

2021-09-29 09:14:35 2492

原创 jQuery实现平滑滚动到指定锚点的方法

$(document).ready(function() { $("a.topLink").click(function() { $("html, body").animate({ scrollTop: $($(this).attr("href")).offset().top + "px" }, { duration: 500, easing: "swing" }); return false; });});

2021-09-29 08:17:23 747

原创 解决WordPress程序出现“A TimThumb error has occured“报错问题

A TimThumb error has occuredThe following error(s) occured:An error occured fetching image.从报错信息中可以看到他当前的WordPress主题中是有TimThumb图片自定义功能的。常见的是因为目录权限,比如当前他的主题中是否有cache文件夹,需要授权777才可以。...

2021-09-29 08:14:31 662

原创 fiddler,iphone安装证书后还是无法访问HTTPS网站

iOS 10.3升级之后,安装的证书默认是不启用的,需要手动去开启。设置 –> 通用 –> 关于本机 –> 证书信息设置; 将Fiddler的证书开关打开就行了

2021-09-27 16:51:46 950

原创 Qt判断文件、文件夹是否存在,不存在则创建文件夹。

1. 判断文件夹是否存在参数说明:QString fullPath;//文件夹全路径/*方法1*/bool isDirExist(QString fullPath){ QDir dir(fullPath); if(dir.exists()) { return true; } return false;}/*方法2*/bool isDirExist(QString fullPath){ QFileInfo fileInfo(f

2021-09-27 16:40:35 10607

原创 Qt获取程序所在目录、用户目录、临时文件夹、桌面

一、获取程序所在路径比如我们的可执行程序所在路径为:C:/Qt/365codes/app.exe获取程序所在位置的目录,调用QCoreApplication::applicationDirPath()方法qApp->applicationDirPath();结果为:C:/Qt/365codes/获取程序所在位置的完整名称,调用QCoreApplication::applicationFilePath()方法qApp->applicationFilePath.

2021-09-27 16:37:21 5027

原创 Qt中QWebEngineView控件Cookie及缓存的常见问题

一、QWebEngineView获取Cookie及缓存文件的默认存储路径通过QWebEngineView实现基本的浏览网页界面程序,运行后QtWebEngine会在用户目录AppData\Local下生成缓存文件夹,该文件夹是隐藏的,需要设置文件夹隐藏可见才能具体看到。示例如下:C:\Users\Administrator\AppData\Local\AppName\QtWebEngine\Default其中,AppName是应用程序的名称,文件夹中包含了缓存文件,同时也包含了cookies信息

2021-09-27 14:50:35 7522 2

原创 解决RiPro主题前端缩略图不显示问题,修改timthumb,php且授权

如果用到了OSS等外链,先修改timthumb.php文件。// 如果有外链图片 请在这里添加有域名白名单,例如yuming.aliyunoss.com,否则安全原因不能显示,如果已经用了阿里云oss或者其他wp自带裁剪模式,安全在安全 可以删除此文件if(! isset($ALLOWED_SITES)){$ALLOWED_SITES = array (‘yuming.aliyunoss.com’,);}再将cache和timthumb.php两个文件设置777权限,然后刷新前端就可

2021-09-26 11:48:17 1097

原创 QWebEngineView实现HTTP请求的拦截

在配置文件上实现QWebEngineUrlRequestInterceptor接口并安装拦截器,在它们到达 Chromium的网络堆栈之前,可以拦截。阻塞和修改URL请求。它是一个抽象类,意味着需要子类化它才能得到所需的内容。#include <QWebEngineUrlRequestInterceptor>#include <QDebug>class RequestInterceptor : public QWebEngineUrlRequestIntercepto

2021-09-26 11:37:29 2847 4

原创 阿里云、腾讯云等linux主机修改 $为#的方法

#是root用的,可以直接在终端里输入sudo -i就可以。

2021-09-26 11:19:04 1403

原创 js实现复制到剪切板

1、第一种,通过clipboard.js插件实现(推荐)此插件封装了很多种使用方式很方便,具体demo,可以去GitHub上看,clipboard传送门2、第二种,纯js实现:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>CopyDemo</title></head><body>

2021-09-26 11:14:27 431

原创 Qt 在线安装器

Qt 6.0 Alpha 发布于 10月6日,通过在线安装。Qt 在线安装器Index of /official_releases/online_installers最新 Qt6 变化资讯:Qt 6 中的 网络变化Qt Network in Qt 6Qt 6 中的 容器变化QList changes in Qt 6Qt 6 中的 异步APIAsynchronous APIs in Qt 6 | Multithreaded Programming | QtQt 6 中的 解析XMLPa

2021-09-26 11:13:13 724

原创 编程开发中“重载”和“重写”的区别

重载:同一个类中相同方法名不同形参是重载,用来接收不同数据类型的参数。重写:在子父类中相同方法名并且形参和返回值都必须一样的才算重写,重写之后子类就不会默认去调用父类的同名方法而是使用自己的方法。...

2021-09-26 11:10:59 205

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除