自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 资源 (10)
  • 收藏
  • 关注

原创 vue项目添加单元测试问题记录

无谓的弯路步入正途一个用cli创建的练手的VUE项目,默认没带单元测试,想添加单元测试功能,遂开始了这一路的折腾,本来就有点儿奇怪用cli创建项目为啥不带单元测试支持。无谓的弯路先上网搜了一下,vue添加单元测试,文章也比较多,介绍了要添加那些包,增加那些配置,想到,干脆自己用cli创建一个带单元测试的空项目,把单元测试需要的东西合并进来,肯定比网上的要准确,执行了一下vue提示无效命令,就全局安装了一下vue-cli,后面一通折腾,倒是把需要的包都装上了,但是执行单元测试总是报错,执行不了,后来注.

2021-10-22 12:43:17 857

原创 IDEA不识别jar包中的类

一个老项目,原来用eclipse和老版本的idea编译都没问题,换了一个较新版本的idea后,项目中有几个jar包突然不识别了,idea发现不了其中的class,编译也没问题,但是会有错误提示

2021-06-14 15:43:46 1583 2

原创 Qt线程池坑点

近日自己写的一个小工具,用到了Qt线程池QThreadPool和Redis,从QRunnable继承实现了一个Executor,Redis连接由一个自定义的Manager管理,根据当前所处的线程,自动创建连接,连接创建后缓存在Manager中,下次相同的线程再执行任务时,使用之前创建的Redis连接进行操作。使用中有时会出现Redis连接发出数据后,收不到回复的情况,多次试验后发现如果执行一次后,经过30秒以上再执行,就会出现这个问题,30秒以内再次执行则没这个问题。排查过程如下:1.先是怀疑是

2021-03-30 21:23:35 568

原创 Qt的鼠标位置知多少

一个很傻的错误要写一个很简单的软件,界面完全定制,没有标题栏,所以需要自己实现窗口拖动,然后我写下了一段很傻的代码

2021-01-24 23:19:34 1568 4

原创 Fiddler+模拟器无法抓包的一个很傻B的问题

之前有一段时间想学习一下抖音抓包,折腾了一通也没成功,后来因为忙别的是就放下了,最近又想起来,下定决心,一定要成功。其实网上这方面的文章还是很多的,这次主要参考的是以下两篇文章https://blog.csdn.net/guozehui123/article/details/102819243和https://blog.csdn.net/qq_33697094/article/details/111596004不同的是我用的是雷电模拟器和Fiddler EveryWhere,之前试的时候用的是逍

2021-01-10 16:43:26 6665

原创 Qt设置根据编译器不同链接不同的lib库

我们知道Qt的pro工程文件中可以编写编译条件,根据不同的条件生成不同的编译指令,常用的是根据系统的不同包含不同的源文件,如win32 { HEADERS += windows.h}linux { HEADERS += linux.h}除了源文件,链接的lib文件也需要在pro中指定,而在windows平台中,可选的编译器有msvc和mingw两种,且这两种编译器的库文件不能通用,那么我们怎么在pro文件中根据编译器的不同包含不同的lib库文件呢,pro文件中我们可以通过CO

2021-01-01 00:11:13 1240 2

原创 msys2使用特定版本gcc编译thrift

windows的项目上要使用Qt连接Hbase,之前是使用的vs2010编译器,boost库和thrift库也都编好了,但visual studio的操作模式实在是用不惯,便想改为用QtCreator编辑,但是用VS的QtPlugin转为Qt工程,include boost库和thrift库,竟然编译不过,但是同样的工程在VS里可以编译通过,真是RLGL,看来qmake和VS的工程设置还是不能完美转换,难不成又是巨硬的特性,那就看看能不能编一个mingw版的thrift库来用吧。本着最新的就是最好的偏执

2020-12-30 23:19:47 1763

原创 msys下mingw编译thrift

1.依赖关系thrift依赖boost,libevent,zliblibevent依赖openssl所以编译顺序为openssl,livevent,boost,thrift,这些库在linux上编译比较方便,在windows上编译经常是问题一堆,想想都头疼2.opensslopenssl编译要用msys2,类linux环境,省时省力先到https://www.msys2.org/下载安装msys2,安装完以后只有基本的linux环境,编译环境需要单独安装,先修改msys源,官方源国内

2020-12-24 22:07:26 440 1

原创 Qt中的 DEPENDPATH 和 INCLUDEPATH 的区别

在Qt中添加库文件的时候,Qt会自动在pro文件里生成三行配置INCLUDEPATH += dirDEPENDPATH += dirLIBS += -Ldir -llibxxxincludepath 和 libs作用都比较明确,唯独这个DEPENDPATH的作用不是很清楚,他又和INCLUDEPATH 有什么区别,有点儿稀里糊涂的。先按照我们的惯常操作,问度娘,但是度娘也没有给出答案,所有提到DEPENDPATH就是一句话,设置依赖路径,这和废话没有任何区别,依赖路径又是干啥的,有什么用呢

2020-12-22 11:28:28 15365 11

原创 Electron打包错误

最近想学习一下Electron的开发流程,进入https://www.electronjs.org/docs/tutorial/quick-start跟着教程依次操作,前面几部都很顺利,直到打包阶段,错误他还是没放过我按照文档上的说明,在工程目录执行npm run make,开始执行打包步骤,起初一切看起来都很正常,但是在执行了几十秒后,错误catch了我Debugger attached.√ Checking your systemDebugger attached.√ Resolving

2020-12-13 18:28:31 7229 18

原创 c++头文件引用交叉引用导致类型不识别

修改代码时,原来的引用关系未删除,导致了两个类出现了交叉引用#ifndef CLASSA#define CLASSA#include "classb.h"class ClassA{ funcA();}#endif#ifndef CLASSB#define CLASSB#include "classa.h"class ClassB{ ClassA funcB();}#endif编译时导致ClassB的定义在ClassA的定义前展开,而Clas

2020-12-06 10:32:07 1094

原创 centos 编译lua

要编译的项目有三个:Lua, ToLua,lfs(luafilesystem)Lua编译到网站https://www.lua.org/ftp/下载lua代码,github上的lua源码编译脚本不完善,很大的可能编译不成功,不想花时间研究的还是选择下载源码包吧,因要与tolua配合使用,之前使用的是5.3.5,这次还是下载5.3.5版 解压代码,进入解压出来的目录,执行make linux,报错unkown <readline/readline.h> 执行yum install rea

2020-12-05 13:25:22 518

原创 Window SSH 连接 VBox CentOS7

在Win10下装了一个CentOS7的Minimal版,准备装上docker安装一些东西练习用虚拟机安装启动都很顺利,修改ssh端口号时费了点劲,端口号修改后启动不了ssh服务,搜索后得知时selinux的问题,在selinux中添加端口号后启动成功后来把虚拟机ip从dhcp方式改为了静态设置,然后宿主机里xshell怎么都连不上虚拟机里的ssh了,宿主机和虚拟机互相可以ping通,ssh服务也开了,防火墙关了,统统没用,就是连不上然后各种折腾,关闭selinux,修改ssh端口号为默认的2

2020-11-15 19:31:06 245

原创 C++单态模板类

单态模式作为一个经典的设计模式,使用非常广泛,最近用qt写一个应用,其中有多个类决定按单态模式实现,写的过程中感觉大体上的结构都是类似的,每个写一遍太啰嗦了,就想能不能实现一个模板类作为基类,需要使用单态模式的类只需继承这个类即可,方便使用也能保证质量,避免某次编码过程漏写东西。先再网上找了一下有没有别人已经实现的C++单态模板基类,但是网上大部分的代码都是按照单个类的模式实现的,按基类模式写的也都不够完善,或者用的时候还是有点儿麻烦,综合了几种实现方案后,实现了第一版模板基类#ifndef

2020-11-06 22:14:34 162

原创 Jackson序列化实体过程

1.查找实体类型对应的Srializer,如果尚未创建则先创建一个再返回Serializer创建过程:Serializer主要为一个Property定义列表,其中描述了Propery序列化定义,Property定义列表生成过程为:1)扫描所有的属性,添加到Property列表中;2)扫描所有的get方法,根据属性名在property列表中寻找对应的Property定义,如果有对应属性,则将get方法设置为该property的get方法,没有对应属性则根据get方法创建一个property定义

2020-11-01 20:29:23 389

原创 Qt程序调试时如何跟进Qt库的源码

参考文章:https://blog.csdn.net/qing666888/article/details/81223429需要注意的是在debugger窗口看文件路径的时候需要将下图红框里的选项勾上,否则是提示窗口是不会出来的,高版本的QtCreator应该是默认勾选了的,但是低版本的QtCreator默认是没有勾选的...

2020-08-03 21:48:10 440

原创 Qt模拟键盘事件

模拟键盘事件:QKeyEvent evt = QKeyEvent(QEvent::KeyRelease, Qt::Key_Right, Qt::NoModifier);qApp->sendEvent(QApplication::focusWidget(), &evt);但是发送上下左右键时,默认的焦点转移不起作用,后来多此测试发现默认的焦点转移响应的是KeyPress事件,改为发送KeyPress事件后生效...

2020-07-18 23:25:53 837

原创 Excel使用技巧

给某一列整体应用公式选中第一个单元格后,Ctrl + Shift + 下箭头,在单元格内容区输入公式,公式输入完成后,Ctrl + Enter,设置完成。设置某一列的数据不能重复在名称框中输入A1:A65536,回车选中整列,名称框是图中红色的部分选择数据->数据验证,设置页的允许项选 自定义,公式项输入=COUNTIF(A:A,A1)=1,出错警告页的错误信息输入提示信息,确定。设置某两列的数据不能同时重复假如要设置A列和B列不能同时重复,按以上方法选中B列,在数据验证的公式项中输入=C

2020-05-24 16:38:46 197

原创 Excel使用技巧

# 给某一列整体应用公式选中第一个单元格后,Ctrl + Shift +下箭头,在单元格内容区输入公式,公式输入完成后,Ctrl + Enter,设置完成。#设置某一列的数据不能重复在名称框中输入A1:A65536,回车选中整列,名称框是图中红色的部分选择数据->数据验证,设置页的允许项选自定义,公式项输入=COUNTIF(A:A,A1)=1,出错警告页的错误信息输入提示信息,确定。#设置某两列的数据不能同时重复假如要设置A列和B列不能同时重复,按以上方法选中B列,在数...

2020-05-24 16:37:10 116

原创 CentOS7搭建Git服务器

1.使用环境1.1服务端操作系统:CentOS7SSH:OpenSSH_7.4p1, OpenSSL 1.0.2k-fips 26 Jan 20171.2客户端Win10 专业版:10.0.18362.356Git:git version 2.16.2.windows.1TortoiseGit:TortoiseGit 2.10.0.22.搭建步骤2.1升级服务器端git...

2020-03-27 16:17:00 476

原创 SSH远程连接失败

现象使用SSH无法连接到远程主机,提示ssh: connect to host xxx.xxx.xxx.xxx port 22: Connection refused可能原因首先查看ssh服务是否安装或启动,service sshd status如果提示ssh没有安装,则安装之,sudo yum install openssh-server openssh-client如果提示ssh...

2020-03-27 11:56:56 947

原创 Qt修改exe输出路径

Qt编译时默认的exe文件输出路径为Defaultbuilddirectory +编译类型(debug|release) +pro文件中target名字 +后缀名(exe|dll)Defaultbuilddirectory路径pro文件target如果想修改exe最终的输出路径,可修改的地方有两个,一个是修改工程对应的builddirectory修改该目...

2020-03-18 12:34:49 4836

原创 开机自启动读取配置文件失败

现象:一个桌面管理程序,程序启动后需要自动启动其所管理的一组程序,手动点击启动程序,运行正常,其他程序可正常启动,设为开机自启动,开机自启正常,但是无法启动其他程序。原因:手动点击启动时程序的启动目录是可执行文件所在目录,开机自启时,程序启动目录不是程序所在目录,而是C:\Windows\System,因程序读取配置文件使用的相对目录,所以会找不到配置文件,导致后续逻辑没有执行。解决方案:...

2020-03-18 12:25:16 2199

转载 树形结构的数据库表Schema设计

    程序设计过程中,我们常常用树形结构来表征某些数据的关联关系,如企业上下级部门、栏目结构、商品分类等等,通常而言,这些树状结构需要借助于数据库完成持久化。然而目前的各种基于关系的数据库,都是以二维表的形式记录存储数据信息,因此是不能直接将Tree存入DBMS,设计合适的Sc...

2020-02-08 22:28:10 177

转载 值得学习的C语言开源项目

- 1. WebbenchWebbench是一个在linux下使用的非常简单的网站压测工具。它使用fork()模拟多个客户端同时访问我们设定的URL,测试网站在压力下工作的性能,最多可以模拟3万个并发连接去测试网站的负载能力。Webben...

2020-02-08 22:23:49 1449

原创 如何以调试模式启动node.js项目

工具:vscode,webpack通常的单页应用开发中,配置好package.json中的script段,在命令行中调用 npm start 或 npm run dev 即可启动 webpack-dev-server 启动应用,但是如果想跟踪 webpack 的处理过程,如何才能以调试模式启动 webpack 呢?按照以下方式配置 launch.json 即可:"configuration...

2018-08-24 11:46:45 2759

原创 async_validator

1.引入import AsyncValidator from "async-validator";2.使用根据规则创建一个validator对象,并调用validate函数var validator = new AsyncValidator(rules);validator.validate(source,options,callback);validate函数接收三个参...

2018-08-09 16:11:12 1813

转载 vc调试总是提示项目已过期

vc调试工程时,启动前已生成过,但是每次启动还是会提示项目已过期,可能是因为工程定义文件中包含了已被删除的头文件,将已删除的头文件从工程定义中删除即可。http://shashanzhao.com/archives/861.html

2017-02-10 11:23:56 3803

原创 ado连接oracle报错

本地安装oracle10g,vc中使用ado方式连接远程的oracle11g数据库总是不成功,此为oracle的bug,在本地安装精简版oracle9i或10g客户端即可解决。

2017-02-10 11:22:48 401

原创 libodb编译过程

libodb编译过程使用环境: windosw,odb2.4.0,Qt5.7.0,mingw5.3.0,Oracle11g 下载包: 1.odb-2.4.0-i686-windows.zip 2.libodb-2.4.0.zip 3.libodb-qt-2.4.0.zip 4.libodb-mssql-2.4.0.zip 5.libodb-oracle-2.4.0.zipwin

2016-12-02 11:14:24 978

原创 vs中qt addin 环境配置

环境:qt5.7.0,vs2010,qt addin 1.2.5问题:进入vs-》qt5-》Qt Options配置qt version时,提示xxxx\qmake.exe could not found开始以为是addin插件版本不对,换了1.2.4仍然不对,后来发现是设置的位置不对,设置path时要指定到qmake所在bin目录的上一级目录,我指定的是bin目录,所以一直找不到,太

2016-11-30 15:35:18 1332

原创 qt访问oracle速度慢

现象:用qt访问oracle数据库时,执行query.next函数速度很慢原因:oci访问数据库默认未开启数据预读解决方法:调用QSqlDatabase::setConnectionOptions(QString options)函数设置数据预读行数,options内容为OCI_ATTR_PREFETCH_ROWS=100,其中100为预读的数据行数

2016-11-09 10:43:38 848

原创 qt下odbc驱动中文乱码解决

qt版本4.8.4使用odbc驱动连接oracel数据库读取中文内容,win7和xp下均出现乱码解决办法重新编译qt odbc驱动找打qt src\plugins\sqldrivers\odbc源码,将QODBCDriverPrivate类的变量unicode值为true,执行编译,用得出的动态库替换qt自带的动态库即可

2016-10-31 17:33:26 1139

原创 C++11新特性

1.增加宏定义支持:增加C99预定义宏支持;__func__宏,代表当前所在函数的函数名;_Pragma,类似与#pragma,使用形式为_Pragma("xxxx");__VA_ARGS__,变长函数实参名称。2.增加了long long数据类似,长度与具体平台相关,但不低于为64位。3.宏__cplusplus值修改为201103L,原标准中为199711L。4.支持静态断言sta

2015-03-29 21:58:27 771

转载 js对象创建

JS创建类和对象 JavaScript 创建类/对象的几种方式在JS中,创建对象(Create Object)并不完全是我们时常说的创建类对象,JS中的对象强调的是一种复合类型,JS中创建对象及对对象的访问是极其灵活的。JS对象是一种复合类型,它允许你通过变量名存储和访问,换一种思路,对象是一个无序的属性集合,集合中的每一项都由名称和值组成(听起来是不是很像我们常听说的HA

2014-12-18 14:23:00 429

转载 warning:integer constant is too large for long type

疑问描述Keywords: EDK, long long integer, 64-bit, SW, mb-gcc, powerpc-eabi-gcc, compiler, C/C++ , g++When I define a long long integer data type in SW application in EDK, a warning / error similar

2014-12-09 15:00:03 1954

qtwinmigrate qt5.7.0+vs2013可用

qtwinmigrate qt5.7.0+vs2013可用,需以源码形式使用,以dll形式编译时会有链接错误

2017-06-12

log4qt(支持qt5.7.0 可输出为dll 兼容vs2013)

log4qt修正,支持qt5.7.0,兼容vs2013编译器,可输出为dll使用

2017-06-12

libodb-mysql-2.4.0.dll

odb2.4.0 mysql 编译后lib库及dll文件,使用mysqlconnector6.1.6在mingw5.3.0环境下编译,以不带@n堆栈标识的方式链接,可正常执行odb-example中的例子

2016-12-06

qwt6.1.0源码

The Qwt Widget Library ---------------------- Qwt is an extension to the libraries of the Qt Project. The Qwt library contains widgets and components which are primarily useful for technical and scientifical purposes. It includes a 2-D plotting widget, different kinds of sliders, and much more.

2015-07-30

DEC For D7

Delphi Encryption Compendium For D7

2015-03-19

风飘雪加密解密教程

风飘雪加密解密教程 chm格式

2014-10-23

加密解密.技术内幕

【加密解密.技术内幕】.(ED2000.COM).chm

2014-10-23

vbscript reference

vbscript reference vbscript中文参考手册

2014-10-23

hibernate in action中文版

hibernate in action中文版第四章

2014-10-23

空空如也

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

TA关注的人

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