随笔分类 -  c++

上一页 1 2 3 下一页

进程间通信——— 通过剪切板
摘要:原理:Windows系统支持剪贴板IPC的基本机制是由系统预留的一块全局共享内存,可用于被各进程暂时存储数据。写入进程首先创建一个全局内存块,并将数据写到该内存块;接受数据的进程通过剪贴板机制获取此内存块的句柄,并完成对该内存块数据的读取。 Windows系统在USER32.dll中为剪贴板提供了一 阅读全文

posted @ 2017-03-21 20:41 yifi 阅读(405) 评论(0) 推荐(0)

Heap与Stack的区别
摘要:堆栈的区别: 一、堆栈空间分配区别: 1、栈(操作系统):由操作系统自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈; 2、堆(操作系统): 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收,分配方式倒是类似于链表。 二、堆栈缓存方式区别: 1、栈使用 阅读全文

posted @ 2017-03-17 13:14 yifi 阅读(334) 评论(0) 推荐(1)

软件管理器
摘要:// SoftWareManagerDlg.cpp : 实现文件 // #include "stdafx.h" #include "SoftWareManager.h" #include "SoftWareManagerDlg.h" #include "afxdialogex.h" #include "MyList5.h" #ifdef _DEBUG #define new DEBUG_NEW... 阅读全文

posted @ 2017-03-09 21:23 yifi 阅读(366) 评论(0) 推荐(0)

获取电脑软件信息 和 浏览器信息
摘要://////////////leo/////////// ///////IE information/////// bool SoftInfo(SOCKET s,WSAEVENT hEvent) { SOFTINFO softinfo; DWORD retLen; HKEY m_key,m_key2; char m_SubKey[255]="SOFTWA... 阅读全文

posted @ 2017-03-09 21:22 yifi 阅读(235) 评论(0) 推荐(0)

字符串之间的转换
摘要:#ifndef USE_H_ #define USE_H_ #include #include #include using namespace std; //字符类型 wchar_t char //获取字符长度 wcslen() strlen() //连接两个字符串 wcscat() strcat() //复制字符... 阅读全文

posted @ 2017-03-09 21:18 yifi 阅读(206) 评论(0) 推荐(0)

USN
摘要:USN是Update Service Number Journal or Change Journal的英文缩写,直译为“更新序列号”,是对NTFS卷里所修改过的信息进行相关记录的功能。当年微软发布Windows 2000时,建立NTFS 5.0的同时,加入了一些新功能和改进了旧版本的文件系统,为它 阅读全文

posted @ 2017-03-09 21:16 yifi 阅读(1218) 评论(0) 推荐(0)

提权后重启应用
摘要:void CAAADlg::OnSysrise() { // TODO: 在此添加命令处理程序代码 ::ShowWindow(m_hWnd, SW_HIDE); // 2. 获取当前程序路径 WCHAR szApplication[MAX_PATH] = { 0 }; DWORD cchLength = _countof(szApplication); ... 阅读全文

posted @ 2017-03-09 21:15 yifi 阅读(162) 评论(0) 推荐(0)

Ring3层代码提权
摘要:BOOL EnableDebugPri64() { typedef long (__fastcall *pfnRtlAdjustPrivilege64)(ULONG,ULONG,ULONG,PVOID); pfnRtlAdjustPrivilege64 RtlAdjustPrivilege; DWORD dwRetVal = 0;... 阅读全文

posted @ 2017-03-09 20:47 yifi 阅读(353) 评论(0) 推荐(0)

获取计算机操作系统名称和版本号
摘要://读取操作系统的名称 void CPCHunterDlg::GetSystemName(CString& osname) { SYSTEM_INFO info; //用SYSTEM_INFO结构判断64位AMD处理器 GetSystemInfo(&info); //调用GetSystemInfo函数填充结构 OSVERSIONINFOEX os;... 阅读全文

posted @ 2017-03-09 20:45 yifi 阅读(1552) 评论(0) 推荐(0)

获取PEB
摘要:参考链接:http://www.cnblogs.com/HsinTsao/p/6399459.html 自己感觉这个方法不行 阅读全文

posted @ 2017-03-09 16:30 yifi 阅读(492) 评论(1) 推荐(0)

反调试
摘要:Github上看到的一个Demo:https://github.com/cetfor/AntiDBG 检测一个Demo是否被调试 无非就是从四个方面进行入手: 内存 通过查询窗口、父进程、PEB、DbgPort等标志位检测 CPU 通过CTX标志位进行判断 时间 通过比较时间确定是否被调试 异常 各 阅读全文

posted @ 2017-03-09 16:01 yifi 阅读(660) 评论(0) 推荐(0)

调试器
摘要:http://www.pediy.com/kssd/pediy11/111876.html 三种断点分别对应的异常类型及处理: 1. 软件断点(INT3):对应的异常是 EXCEPTION_BREAKPOINT,处理方式为恢复代码为原来字节,并将EIP减一,并设置单步以便进入单步后重新设置这个一般断 阅读全文

posted @ 2017-03-01 11:34 yifi 阅读(463) 评论(0) 推荐(0)

调用约定
摘要:// Class.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include <iostream> #include <Windows.h> using namespace std; class Base //Derive的间接基类 { public: 阅读全文

posted @ 2017-02-28 19:38 yifi 阅读(235) 评论(0) 推荐(0)

X86SEH分析笔记
摘要:在X86Windows中,函数通过以下步骤来参与SEH: 1.在自身的栈空间中分配并初始化一个EXCEPT_REGISTRATION(_RECORD)结构体。 2.在该EXCEPTION_REGISTRATION(_RECORD)挂入当前进程的异常链表。 当某个函数触发异常时,系统首先通过调用KiD 阅读全文

posted @ 2017-02-28 19:21 yifi 阅读(293) 评论(0) 推荐(0)

int 2e 与 Sysenter的区别
摘要:参考链接:http://www.dewen.net.cn/q/302/ INT 0x2E在系统调用的时候,需要进行栈切换的工作。由于Interrupt/Exception Handler的调用都是通过 call/trap/task这一类的gate来实现的,这种方式会进行栈切换,并且系统栈的地址等信息 阅读全文

posted @ 2017-02-28 09:57 yifi 阅读(1633) 评论(0) 推荐(1)

页面置换算法
摘要:1 先入先出法(FIFO)最简单的页面置换算法是先入先出(FIFO)法。这种算法的实质是,总是选择在主存中停留时间最长(即最老)的一页置换,即先进入内存的页,先退出内存。理由是:最早调入内存的页,其不再被使用的可能性比刚调入内存的可能性大。建立一个FIFO队列,收容所有在内存中的页。被置换页面总是在 阅读全文

posted @ 2017-02-27 14:36 yifi 阅读(260) 评论(0) 推荐(0)

常见内存分配算法
摘要:一、首次适应算法 使用该算法进行内存分配时,从空闲分区链首开始查找,直至找到一个能满足其大小要求的空闲分区为止。 然后再按照作业的大小,从该分区中划出一块内存分配给请求者,余下的空闲分区仍留在空闲分区链中。 该算法倾向于使用内存中低地址部分的空闲分区,在高地址部分的空闲分区很少被利用,从而保留了高地 阅读全文

posted @ 2017-02-27 14:30 yifi 阅读(3531) 评论(0) 推荐(0)

进程枚举
摘要:一、Ring3层方法总结 1)利用Createtoolhelp32Snapshot Createtoolhelp32Snapshot会返回当前进程的进程快照句柄 通过 Process32First 和 Process32Next枚举进程 1 #include "stdafx.h" 2 #includ 阅读全文

posted @ 2017-02-27 14:20 yifi 阅读(780) 评论(0) 推荐(0)

STL vector list map 用法
摘要:1 // STL应用.cpp : 定义控制台应用程序的入口点。 2 // 3 4 #include "stdafx.h" 5 #include <iostream> 6 #include <list> 7 #include <vector> 8 #include <map> 9 #include < 阅读全文

posted @ 2017-01-12 14:16 yifi 阅读(385) 评论(0) 推荐(0)

EXE加锁器 只是思路
摘要:代码有点乱 但是我不想整理 1 // AddBoxDlg.cpp : 实现文件 2 // 3 4 #include "stdafx.h" 5 #include "AddBox.h" 6 #include "AddBoxDlg.h" 7 #include "afxdialogex.h" 8 #incl 阅读全文

posted @ 2016-08-18 23:06 yifi 阅读(474) 评论(0) 推荐(0)

上一页 1 2 3 下一页

导航