- 博客(16)
- 资源 (2)
- 收藏
- 关注
原创 Windows10访问smb提示拒绝访问的奇葩原因
参考网上一堆教程,开启window功能、修改策略组、一键SMB脚本等等均无效,一直提示拒绝访问,最后发现是smb的目录"/overlay"的第一个字符"/"不能被Windows正确识别,把它删掉就可以访问了,困扰了我好几天,也是无语了。
2022-11-09 19:54:03 5155 1
原创 Docker Engine 安装时遇到的坑
记录最近学习Docker遇到的一些安装与配置问题1、使用一键安装脚本安装失败curl -fsSL https://get.docker.com | bash -s docker该命令报错---> Package docker-scan-plugin.x86_64 0:0.8.0-3.el7 will be installed---> Package libcgroup.x86_64 0:0.41-21.el7 will be installed---> Package li
2021-11-10 14:34:47 1810
原创 异步统一Wait类模板
异步统一Wait模板业务场景业务场景多个不同类对象通过观察者模式(eg,向SDK注册回调)运行,其结果需要异步检测,为简化重复的等待处理逻辑,可采用统一Wait模板方便代码编写,提交效率代码#pragma once#include "time.h"#include "windows.h"#define RESULT_WAIT_BASE 1000#define RESULT_WAIT_NONE (RESULT_WAIT_BASE + 1)#define RESULT_WAITI
2021-07-20 11:36:07 143
原创 一种基于总线思想的软件构架
一种基于总线思想的软件框架项目上学到的,直接上实例代码,使用总线类来实现模块之间通信/// Invoker抽象类class IComInvoker{public: virtual ~IComInvoker(){}; //! 调用接口,可以使用boost::any代替QVariant virtual QVariant Invoke(QVariant args[], int nArgNum) = 0; //! 判断目标参数类型是否合法 virtual bool CheckMethodVali
2020-09-02 20:19:33 596 1
原创 完全背包问题中的第二层循环为什么为正序
0-1背包问题的状态转移方程是:f[i][j] = max(f[i-1][j], f[i-1][j - weight[i]] + value[i]);这个方程特点:当前行的值由上一行决定当用一维数组表示时,f[j] = max(f[j], f[j-weight[i]]+value[i])括号中的f[i]表示的是上一次的状态值,因此需要倒序更新防止下次循环被覆盖完全背包的状态转移方程是:f[i][j] = max(f[i-1][j], f[i][j - weight[i]] + value[i]
2020-08-06 14:27:28 593 2
原创 结构体包含非基本数据类型成员时使用memset会引起内存泄漏
某天在工作时,需要在前人的项目代码中的结构体(假定STU)增加数据成员QStringList lst,加好修改后运行时发现程序闪退,debug下调试发现代码崩溃在lst.append()上,于是往前检查代码,发现有memset操作,于是想到了结构体中存在非基本数据类型成员-类对象,如果直接memset会导致破坏类对象的数据结构,必然会导致内存访问异常,而且可能会仅仅释放了类对象的地址,其内部指向的内存空间应该没有释放,应该会导致内存泄漏,为此做了如下测试:测试代码:#include <iostre
2020-07-02 20:17:56 1319
原创 C++运用模板优雅得创建对象(类似工厂模式)
直接上代码Creator类#include <QMap>#include <QString>#define REGOBJ(T,strName) ObjCreateHelper<T> inst##T(strName);#define CREATEOBJ(strName) ObjCreator::GetInstance()->CreateObj(s...
2020-04-16 22:47:07 959 1
原创 虚函数表
之前看过虚函数表,总是忘,估计是没充分理解吧,再记下笔记,自己不懂了再返回来看看typedef void(*Fun)(void);class Base{public: virtual void f() { cout << "Base::f" << endl; } virtual void g() { cout << "Base::g" <<...
2020-03-22 18:33:52 215
原创 远程代码注入及DLL注入教程(InlineHook)---植物大战僵尸为例
远程代码注入及DLL注入教程说明 本人刚开始学习逆向,不知道有没有动力学下深去,这一块也没有详细的实战教学,学多少就上传多少,希望能给想学的朋友一点帮助吧,本教程想通过植物大战僵尸这一经典游戏来抛砖引玉,教大家如何编写一个单机辅助。 CE找数据的过程本教程不提供,本文着重讲述如何根据找到的数据实现无限阳光,无冷却,其他诸如秒杀僵尸,后台运行等均大同小异。所需基础CE找关键数据基址(网...
2020-03-15 20:34:49 3320 4
原创 (入门三)Python爬动态页面之爬小说
前言动态页面相对于静态页面的解析来说,更加简单直接,因为动态页面返回的ajax数据基本都是json格式或者经过去头或者去尾变成json,根本不需要依赖BeautifulSoup,如下为需要处理的json:jQuery110208565583287844201_1578312396626({"tag": "全部","ptagOneCount": "10","xxx":"yyy" }) ...
2020-01-09 22:31:43 631
原创 (入门二)Python爬静态页面之爬小说
分析书名(保存文件名):reader_crumb = bs.find_all('div', {'class': 'reader_crumb'})[0]bookname: str = reader_crumb.find_all('a')[2].text章节:chapter = bs.find('div', {'class': 'title_txtbox'}).text正文:把...
2020-01-07 23:09:31 176
原创 (入门一)Python配合MongoDB爬静态页面
文章目录分析小记分析页面地址https://piao.qunar.com/ticket/list.htm?keyword=关键字®ion=&from=mpl_search_suggest&page=页码&sort=ppF12可以看到,搜索结果在’class’: 'result_list’的div中,剩下的解析就不难了,直接上代码import r...
2020-01-07 21:33:37 200
原创 QT中信号和槽的几种绑定方式
方式一connect(fileBtn,SIGNAL(clicked(bool)),this,SLOT(showFile()));方式二connect(fileBtn,QPushButton::clicked,={//lambda表达式});方式三在QT设计师界面中右键控件转到槽...
2019-03-21 15:45:34 4967 1
原创 TCP协议的三次握手与四次挥手
三次握手1、客户端发送syn包(同步序列编号Synchronize Sequence Numbers)到服务器,并进入SYN_SENT状态,等待服务器确认;2、服务器收到syn包,并返回给客户端SYN+ACK包,此时服务器进入SYN_RECV状态;3、客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),建立连接,完成三次握手。四次挥手1、客户端申请断开(FIN...
2019-03-21 15:39:52 101
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人