06 2020 档案

摘要:// remote06.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "windows.h" BOOL func(DWORD ProcessID,char* Dll 阅读全文
posted @ 2020-06-30 18:36 温暖了寂寞 阅读(179) 评论(0) 推荐(0)
摘要:PROCESSENTRY32 PROCESSENTRY32 Structure Describes an entry from a list of the processes residing in the system address space when a snapshot was taken 阅读全文
posted @ 2020-06-30 18:05 温暖了寂寞 阅读(415) 评论(0) 推荐(0)
摘要:一、概述 1、动态库和静态库的异同点 动态链接库(Dynamic Linkable Library,DLL)它提供一些可以直接使用的变量,类和函数。经历了“无库—静态链接库—动态链接库”的历程后,dll应用十分广泛。 静态链接库和动态链接库都是共享代码。 如果采用静态链链接库(.lib),lib中的 阅读全文
posted @ 2020-06-29 10:50 温暖了寂寞 阅读(4242) 评论(0) 推荐(0)
摘要:什么是重定位: 重定位就是你本来这个程序理论上要占据这个地址,但是由于某种原因,这个地址现在不能让你占用,你必须转移到别的地址,这就需要基址重定位。你可能会问,不是说过每个进程都有自己独立的虚拟地址空间吗?既然都是自己的,怎么会被占据呢?对于EXE应用程序来说,是这样的。但是动态链接库就不一样了,我 阅读全文
posted @ 2020-06-28 16:55 温暖了寂寞 阅读(433) 评论(0) 推荐(0)
摘要:一丶简介 根据前几讲,我们已经熟悉了导入表结构.但是如果大家尝试过打印导入表的结构. INT IAT的时候. 会出现问题. PE在加载前 INT IAT表都指向一个名称表. 这样说是没错的. 但是如果你打印过导入表.会发现一个问题. 有的EXE程序.在打印IAT表的时候.发现里面是地址. 原因: 我 阅读全文
posted @ 2020-06-28 16:50 温暖了寂寞 阅读(396) 评论(0) 推荐(0)
摘要:LPVOID VirtualAlloc( LPVOID lpAddress, //指定内存地址,一般填NULL DWORD dwSize, //分配内存大小 0x1000为1个物理页 DWORD flAllocationType, //分配类型 MEM_COMMIT地址空间和物理页都分 MEM_RE 阅读全文
posted @ 2020-06-22 11:39 温暖了寂寞 阅读(794) 评论(0) 推荐(0)
摘要:原文: https://blog.csdn.net/evileagle/article/details/12357155 也许大家注意到过,在IMAGE_DATA_DIRECTORY中,有几项的名字都和导入表有关系,其中包括:IMAGE_DIRECTORY_ENTRY_IMPORT,IMAGE_DI 阅读全文
posted @ 2020-06-21 20:04 温暖了寂寞 阅读(1293) 评论(0) 推荐(0)
摘要:原文: http://blog.csdn.net/evileagle/article/details/12176797 PVOID NTAPI RtlImageDirectoryEntryToData(PVOID Base, BOOLEAN MappedAsImage, USHORT Directo 阅读全文
posted @ 2020-06-21 19:57 温暖了寂寞 阅读(645) 评论(0) 推荐(0)
摘要:1.准备工作 1.1获取MessageBox地址 方法①: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #include <stdio.h> #include <windows.h> typedef void (*FuncPointer)(LPTSTR); / 阅读全文
posted @ 2020-06-21 19:49 温暖了寂寞 阅读(577) 评论(0) 推荐(0)
摘要:#include "StdAfx.h" //#include <windows.h> #include <stdio.h> //先定义回调函数 LRESULT CALLBACK WinSunProc( HWND hwnd, // handle to window UINT uMsg, // mess 阅读全文
posted @ 2020-06-18 22:04 温暖了寂寞 阅读(522) 评论(0) 推荐(0)
摘要:// Graphic0617.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <WINDOWS.H> int main(int argc, char* argv[]) 阅读全文
posted @ 2020-06-18 00:33 温暖了寂寞 阅读(132) 评论(0) 推荐(0)
摘要:BOOL CreateProcess( LPCTSTR 【lpApplicationName】, //指向可执行模块名称的指针 LPTSTR 【lpCommandLine】, //指向命令行字符串的指针 LPSECURITY_ATTRIBUTES 【lpProcessAttributes】, //指 阅读全文
posted @ 2020-06-17 18:23 温暖了寂寞 阅读(1023) 评论(0) 推荐(0)
摘要:// Event0616.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <WINDOWS.H> #include <iostream> HANDLE hEventS 阅读全文
posted @ 2020-06-16 23:09 温暖了寂寞 阅读(233) 评论(0) 推荐(0)
摘要:// Event0616.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <WINDOWS.H> HANDLE hEvent; HANDLE hMutex; DWOR 阅读全文
posted @ 2020-06-16 19:15 温暖了寂寞 阅读(118) 评论(0) 推荐(0)
摘要:CreateMutex( LPSECURITY_ATTRIBUTES 【lpMutexAttributes】, //指向安全属性的指针 BOOL 【bInitialOwner】, //标志初始所有权 LPCTSTR 【lpName】 //指向mutex对象名称的指针 ); // Mutex0616. 阅读全文
posted @ 2020-06-16 16:58 温暖了寂寞 阅读(1263) 评论(0) 推荐(0)
摘要://创建全局变量结构体 CRITICAL_SECTION cs; //初始化变量结构体 InitializeCriticalSection(&cs); //循环之前判断是否拿到令牌 EnterCriticalSection(&cs); //代码区 //释放令牌 LeaveCriticalSectio 阅读全文
posted @ 2020-06-16 16:52 温暖了寂寞 阅读(289) 评论(0) 推荐(0)
摘要:#include "stdafx.h" #include <iostream> #include <windows.h> using namespace std; DWORD WINAPI ThreadProc(LPVOID lpParamter) { for (int i = 0;i<10;i++ 阅读全文
posted @ 2020-06-16 14:04 温暖了寂寞 阅读(2094) 评论(0) 推荐(0)
摘要:// remote06.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "windows.h" BOOL func(DWORD ProcessID,char* Dll 阅读全文
posted @ 2020-06-15 19:08 温暖了寂寞 阅读(185) 评论(0) 推荐(0)
摘要:EnumProcessModules Function 获得指定进程中所有模块的句柄。 语法 BOOL WINAPI EnumProcessModules(in HANDLE hProcess,out HMODULE *lphModule,in DWORD cb,out LPDWORD lpcbNe 阅读全文
posted @ 2020-06-15 17:13 温暖了寂寞 阅读(2700) 评论(0) 推荐(0)
摘要:The GetModuleBaseName function retrieves the base name of the specified module.DWORD GetModuleBaseName(HANDLE hProcess, // handle to processHMODULE hM 阅读全文
posted @ 2020-06-15 17:12 温暖了寂寞 阅读(967) 评论(0) 推荐(0)
摘要:原文 https://blog.csdn.net/baidu_38494049/article/details/82930099 如果有小伙伴看不懂太多英语,还想知道GetCursorPos函数的用法,那么往下看吧。msdn网址:https://docs.microsoft.com/zh-cn/wi 阅读全文
posted @ 2020-06-15 14:17 温暖了寂寞 阅读(2402) 评论(0) 推荐(0)
摘要:#include <stdio.h> #include <iostream> #include <windows.h> using namespace std; //定义线程调用函数 DWORD WINAPI ThreadProc(LPVOID lpParamter) { int iRunTime 阅读全文
posted @ 2020-06-14 12:13 温暖了寂寞 阅读(523) 评论(0) 推荐(0)
摘要:一 extern "C" __declspec(dllexport)调用约定 返回类型 函数名(参数) 二 使用.def文件 EXPORTS函数名 @ 编号函数名 @ 编号 NONAME 阅读全文
posted @ 2020-06-13 17:30 温暖了寂寞 阅读(252) 评论(0) 推荐(0)
摘要://内存申请物理页HANDLE CreateFileMapping( HANDLE hFile, //与文件句柄关联 LPSECURITY_ATTRIBUTES lpFileMappingAttributes, //NULL DWORD flProtect, //访问保护类型 DWORD dwMax 阅读全文
posted @ 2020-06-13 11:50 温暖了寂寞 阅读(461) 评论(0) 推荐(0)
摘要:#include <stdio.h>#include <windows.h>int main(){ //内存申请物理页 HANDLE hMapFile = CreateFileMapping(HANDLE(-1), NULL, PAGE_READWRITE, 0, 0x1000, "共享映射"); 阅读全文
posted @ 2020-06-13 10:36 温暖了寂寞 阅读(509) 评论(0) 推荐(0)
摘要://获取卷 GetLogicalDrives(); //获取一个卷的盘符的字符串 GetLogicalDriveStrings(); //获取卷的类型 GetDriveType(); //获取卷的类型 GetVolumeInformation(); //创建目录 CreateDirectory(); 阅读全文
posted @ 2020-06-13 09:12 温暖了寂寞 阅读(174) 评论(0) 推荐(0)
摘要:功能:从调用线程的消息队列里取得消息并放于指定的结构。 函数原型: BOOL GetMessage(_Out_ LPMSG lpMsg,_In_opt_ HWND hWnd,_In_ UINT wMsgFilterMin,_In_ UINT wMsgFilterMax); lpMsg:指向MSG结构 阅读全文
posted @ 2020-06-10 11:45 温暖了寂寞 阅读(536) 评论(0) 推荐(0)
摘要:原文 https://www.cnblogs.com/jjmcu/p/3881441.html CreateWindow函数详解 在注册完窗口类后就需要进行窗口的创建,用到的函数理所当然就是CreateWindow(), 而这个函数是基于窗口类的,所以还需要指定几个参数来制定特定的窗口。而且像一些不 阅读全文
posted @ 2020-06-10 11:43 温暖了寂寞 阅读(1989) 评论(0) 推荐(0)
摘要:原文 http://blog.csdn.net/xxxluozhen/article/details/4123549 TranslateMessage函数 函数功能描述:将虚拟键消息转换为字符消息。字符消息被送到调用线程的消息队列中,在下一次线程调用函数GetMessage或PeekMessage时 阅读全文
posted @ 2020-06-10 11:41 温暖了寂寞 阅读(562) 评论(0) 推荐(0)
摘要:一 线程创建函数 CreateThread 修改说明:这里 说了另一种创建线程方法,使用_beginthreadex()更安全的创建线程,在实际使用中尽量使用_beginthreadex()来创建线程,在博客中使用 CreateThread()l来创建线程其实是一种不太好的方法,不过这里只做原理分析 阅读全文
posted @ 2020-06-09 10:21 温暖了寂寞 阅读(971) 评论(0) 推荐(0)
摘要:类的友元函数是定义在类外部,但有权访问类的所有私有(private)成员和保护(protected)成员。尽管友元函数的原型有在类的定义中出现过,但是友元函数并不是成员函数。 友元可以是一个函数,该函数被称为友元函数;友元也可以是一个类,该类被称为友元类,在这种情况下,整个类及其所有成员都是友元。 阅读全文
posted @ 2020-06-07 14:00 温暖了寂寞 阅读(294) 评论(0) 推荐(0)
摘要:原文: https://blog.csdn.net/qq_40416052/article/details/82528676 一、为什么使用命名空间 考虑一种情况,当我们有两个同名的人,Zara,在同一个班里。当我们需要对它们进行区分我们必须使用一些额外的信息和它们的名字,比如这个区域,如果它们生活 阅读全文
posted @ 2020-06-07 13:37 温暖了寂寞 阅读(352) 评论(0) 推荐(0)
摘要:memset()函数原型是extern void *memset(void *buffer, int c, int count) buffer:为指针或是数组c:是赋给buffer的值count:赋值buffer中的位数 1. memset是以字节为单位,初始化内存块。 当初始化一个字节单位的数组时 阅读全文
posted @ 2020-06-06 23:19 温暖了寂寞 阅读(2694) 评论(0) 推荐(0)
摘要:首先:强调一个概念 定义一个函数为虚函数,不代表函数为不被实现的函数。 定义他为虚函数是为了允许用基类的指针来调用子类的这个函数。 定义一个函数为纯虚函数,才代表函数没有被实现。 定义纯虚函数是为了实现一个接口,起到一个规范的作用,规范继承这个类的程序员必须实现这个函数。 1、简介 假设我们有下面的 阅读全文
posted @ 2020-06-06 14:04 温暖了寂寞 阅读(1027) 评论(0) 推荐(0)
摘要:原文: https://www.cnblogs.com/xiaoxiaoqiang001/p/5557704.html 在C++中类的对象建立分为两种,一种是静态建立,如A a;另一种是动态建立,如A* p=new A(),A*p=(A*)malloc();静态建立一个类对象,是由编译器为对象在栈空 阅读全文
posted @ 2020-06-06 09:32 温暖了寂寞 阅读(971) 评论(0) 推荐(0)
摘要:一,继承的基本概念 1.类与类之间的关系 has-A,包含关系,用以描述一个类由多个“部件类”构成,实现has-A关系用类的成员属性表示,即一个类的成员属性是另一个已经定义好的类。 use-A,一个类使用另一个类,通过类之间的成员函数相互联系,定义友元或者通过传递参数的方式来实现。 is-A,即继承 阅读全文
posted @ 2020-06-06 00:13 温暖了寂寞 阅读(342) 评论(0) 推荐(0)
摘要:1. 构造函数 定义:每个类都分别定义了它的对象被初始化的方式,类通过一个或者几个特殊的成员函数来控制其对象的初始化过程,这些函数叫做构造函数。构造函数的任务是初始化类对象的数据成员,只要类的对象被创建,就会执行构造函数。 构造函数的名字和类名相同。 和其他函数不一样的是,构造函数没有返回类型。 类 阅读全文
posted @ 2020-06-06 00:06 温暖了寂寞 阅读(331) 评论(0) 推荐(0)
摘要:#include <stdio.h> #include <stdlib.h> #include <windows.h> class Base { public: int x2; }; int main() { //基本类型引用 int x1 = 1; int& ref1 = x1; ref1 = 2 阅读全文
posted @ 2020-06-05 21:20 温暖了寂寞 阅读(344) 评论(0) 推荐(0)
摘要:2,dir命令该命令显示一个目录下的文件和子目录列表以及文件的其他详细资料,包括文件大小,创建日期和时间等。语法是:dir [drive:驱动器名称][path目录路径] [/p] [/w] [/o] [/s][/p] 表示分页显示目录内容。要查看下一屏幕,可按任意键。[/w] 表示以宽列表格式显示 阅读全文
posted @ 2020-06-05 14:42 温暖了寂寞 阅读(181) 评论(0) 推荐(0)
摘要:C++ 模板 模板是泛型编程的基础,泛型编程即以一种独立于任何特定类型的方式编写代码。 模板是创建泛型类或函数的蓝图或公式。库容器,比如迭代器和算法,都是泛型编程的例子,它们都使用了模板的概念。 每个容器都有一个单一的定义,比如 向量,我们可以定义许多不同类型的向量,比如 vector <int>  阅读全文
posted @ 2020-06-04 14:08 温暖了寂寞 阅读(255) 评论(0) 推荐(0)
摘要:operator是C++的关键字,它和运算符一起使用,表示一个运算符函数,理解时应将operator=整体上视为一个函数名。 这是C++扩展运算符功能的方法,虽然样子古怪,但也可以理解:一方面要使运算符的使用方法与其原来一致,另一方面扩展其功能只能通过函数的方式(c++中,“功能”都是由函数实现的) 阅读全文
posted @ 2020-06-04 10:16 温暖了寂寞 阅读(440) 评论(0) 推荐(0)
摘要:原文 https://www.cnblogs.com/alinh/p/9636352.html C++的多态性用一句话概括就是:在基类的函数前加上virtual关键字,在派生类中重写该函数,运行时将会根据对象的实际类型来调用相应的函数。如果对象类型是派生类,就调用派生类的函数;如果对象类型是基类,就 阅读全文
posted @ 2020-06-04 10:11 温暖了寂寞 阅读(184) 评论(0) 推荐(0)
摘要:字符分类: 宽字符函数普通C函数描述iswalnum() isalnum() 测试字符是否为数字或字母iswalpha() isalpha() 测试字符是否是字母iswcntrl() iscntrl() 测试字符是否是控制符iswdigit() isdigit() 测试字符是否为数字iswgraph 阅读全文
posted @ 2020-06-03 11:43 温暖了寂寞 阅读(1943) 评论(0) 推荐(0)
摘要:转自:https://blog.csdn.net/shenyongjun1209/article/details/51785791 UTF-8是Unicode的一种实现方式,也就是它的字节结构有特殊要求,所以我们说一个汉字的范围是0X4E00到0x9FA5,是指unicode值,至于放在utf-8的 阅读全文
posted @ 2020-06-03 10:45 温暖了寂寞 阅读(2779) 评论(0) 推荐(0)