03 2022 档案

摘要:记录一下C++的虚表 虚表,就是一连串指向虚函数的函数地址指针。 实验说明,虚表占据大小和一个(LPVOID)大小是一样的。 32位为4字节,64位为8字节。 代码: #include<iostream> #include<windows.h> using namespace std; class 阅读全文
posted @ 2022-03-30 20:27 念秋 阅读(57) 评论(0) 推荐(0) 编辑
摘要:记录一下控制台版的PeInfo 开发环境:MinGW Dev-C++ 代码: //#include "widget.h" //#include <QApplication> //int main(int argc, char *argv[]) //{ // QApplication a(argc, 阅读全文
posted @ 2022-03-30 19:56 念秋 阅读(27) 评论(0) 推荐(0) 编辑
摘要:线程本地存储(TLS)的一些总结 一、静态线程局部存储 1.MinGW编译器下 代码: #include<iostream> #include<thread> #include<windows.h> #include<mutex> using namespace std; mutex mu; __t 阅读全文
posted @ 2022-03-27 17:40 念秋 阅读(27) 评论(0) 推荐(0) 编辑
摘要:C++常用程序记录 1.读取文件,替换指定字符串为另一字符串。 稍微改改,就可以变成替换指定字节数组了 朴实无华的操作,只能替换等长的内容 代码: #include<iostream> #include<windows.h> using namespace std; int main() { str 阅读全文
posted @ 2022-03-24 19:07 念秋 阅读(59) 评论(0) 推荐(0) 编辑
摘要:C++对动态库的测试 需要使用一个类,这个类在动态库里面,而这个静态库有两个版本。 我们自己写代码模拟一下这种情况。 场景一:类的变化只是多了或者少了一个或多个函数,并没有函数名的冲突 版本一: //头文件 #pragma once #ifndef BUILDING_DLL #define DLLI 阅读全文
posted @ 2022-03-23 21:09 念秋 阅读(336) 评论(0) 推荐(0) 编辑
摘要:记录一下windows下进程间通信 1.通过线程同步一样的操作进行进程同步,然后同步的内容换成了共享内存段 本人还是习惯信号量的方式。 场景:主进程需要调用子进程的一个函数。利用共享内存进行输入输出。利用信号量进行数据同步。 代码1,子进程。手动运行也行,让父进程创造也行,根据需要把。 #inclu 阅读全文
posted @ 2022-03-22 20:07 念秋 阅读(633) 评论(0) 推荐(0) 编辑
摘要:记录学习Windows下文件映射来共享内存 目的:探究共享内存区域是否可执行shellcode(让程序在共享内存以后弹出一个信息框) 实验过程: 1.获取MessageBox和ExitProcess的地址。 避免程序弹出信息框后崩溃或者中断。 代码: #include<iostream> #incl 阅读全文
posted @ 2022-03-20 20:13 念秋 阅读(195) 评论(0) 推荐(0) 编辑
摘要:记录一次爬取空间表白墙的图片 有一说一,python是真的简单,网上的资源也很全。本人作为一个连循环都写不明白的小白,也能用python做到想到的事。 爬取图片,只是为了把图片转换为文字,然后找一条特定的说说而已。 首先是登录 此段代码参考至博客 需要自行设置phantomjs.exe的路径。还有就 阅读全文
posted @ 2022-03-20 08:32 念秋 阅读(857) 评论(0) 推荐(0) 编辑
摘要:本人的tesseract本来是3.0.2的,可以正常识别英文,但是添加简体中文识别库以后,一运行就报错。 找了很多错误答案,正解就是这个了。 参考自本篇博客 果然是版本过低,没什么需要注意的。 只是设置环境变量: TESSDATA_PREFIX C:\Program Files (x86)\Tess 阅读全文
posted @ 2022-03-19 17:20 念秋 阅读(676) 评论(0) 推荐(0) 编辑
摘要:利用_popen(),把控制台当做文件一样读写。暂时还不知道有什么特别的用处,不过能读取控制台输出就好了。 只读 #include<iostream> #include<string.h> using namespace std; int main() { FILE* file; char cmd[ 阅读全文
posted @ 2022-03-19 10:13 念秋 阅读(1361) 评论(0) 推荐(0) 编辑
摘要:1.安装 masm32官网 访问官网,即可根据电脑系统选择合适的版本进行下载。 下载以后,双击运行即可安装。 2.环境变量 安装以后,需要设置环境变量,这里默认大家都会设置环境变量,这里只列出需要设置的属性。 include=d:\masm32\include lib=d:masm32\lib pa 阅读全文
posted @ 2022-03-19 09:14 念秋 阅读(693) 评论(0) 推荐(0) 编辑
摘要:记录一下QTabWidget的一次使用 QTabWidget实现出来效果就是标签页的界面,点击一个标签,主界面就展现那个标签页的东西。 值得注意的就是以下几点: 1.QTabWidget::addTab(Widget,"title"),增加一个标签页。比如这个Widget为QPushButton,那 阅读全文
posted @ 2022-03-19 07:53 念秋 阅读(3509) 评论(0) 推荐(0) 编辑
摘要:简短记录一下masm下第一个使用rc资源编译的窗口文件 注:代码完全来自于某个博主的博客,当初也只是想着复制,编译链接,运行一下看看效果。 hello.rc // 资源文件注释格式为双斜杠 // 包含资源头文件,以能使用头键字 #include <resource.h> // 指定对话框ID,asm 阅读全文
posted @ 2022-03-18 22:26 念秋 阅读(208) 评论(0) 推荐(0) 编辑
摘要:简单记录一次python爬取某小说网站小说的操作 #!/usr/bin/python # -*- coding:utf-8 -*- import urllib.request import re # html = urllib.request.urlopen("https://xiaoshuo.ne 阅读全文
posted @ 2022-03-18 20:54 念秋 阅读(799) 评论(0) 推荐(0) 编辑
摘要:PE权威指南第六章之重定位编程 1.无导入表的HelloWorld .386 .model flat,stdcall option casemap:none include windows.inc _QLGetProcAddress typedef proto :dword,:dword _ApiG 阅读全文
posted @ 2022-03-13 17:30 念秋 阅读(94) 评论(0) 推荐(0) 编辑
摘要:关于函数调用中栈的总结 1.栈,是由高地址分配到低地址的。 32位程序中,寄存器ebp指向栈的起始位置,也就是栈的基地址(高地址) 寄存器esp指向栈的目前位置,也就是栈顶。 现在假设程序才运行,ebp和esp寄存器都是0x00190000h 接下来的指令是push 0x1800004H,那么ebp 阅读全文
posted @ 2022-03-11 16:53 念秋 阅读(226) 评论(0) 推荐(0) 编辑
摘要:最近在看《Windows PE 权威指南》,才看完导出表。 动动手,跟着做一下好了。 看完这章,基本可以做一个网上常见的基本的PeInfo(pe文件查看器)了,(不是只看完这章就能做,而是从前往后看完这章) 自己也写了一个,但是还不太完整,不过还是有参考价值的。 工欲善其事必先利其器,没有一个称手的 阅读全文
posted @ 2022-03-06 11:47 念秋 阅读(162) 评论(0) 推荐(0) 编辑
摘要:关于C++多线程,写得好的博客太多了,内容丰富,排版又好看,就是难找。 整体看过以后,本人也总结一下,仅作为日后参照。 这里先推荐看过的几篇博文链接,非常值得一看。 https://blog.csdn.net/dingdingdodo/article/details/108477195 https: 阅读全文
posted @ 2022-03-06 08:37 念秋 阅读(857) 评论(0) 推荐(0) 编辑