![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
程序设计
perfectplug
目前主要从事软件逆向方面的工作
展开
-
[分享]vs2017+WDK 如何解决 warning MSB8038: 已启用 Spectre 缓解
错误提示:Enterprise\Common7\IDE\VC\VCTargets\Microsoft.CppBuild.targets(402,5): warning MSB8038: 已启用 Spectre 缓解,但找不到 Spectre 缓解库。验证 Visual Studio 工作负荷包括 Spectre 缓解库。1>LINK : fatal error LNK1104: ...转载 2019-07-12 11:34:04 · 2832 阅读 · 0 评论 -
SolutionConverter
解决方案转换工具,用VS的朋友可以看看http://www.codeproject.com/Articles/80001/SolutionConverter转载 2012-11-08 16:38:42 · 462 阅读 · 0 评论 -
distorm Powerful Disassembler Library For x86/AMD64
https://code.google.com/p/distorm/转载 2012-11-08 13:07:17 · 555 阅读 · 0 评论 -
a plan for 2012--2013
Zudy : a game robot programAudy : a Anti Anti-Virus programXudy : a game robot programFudy : a firewall program转载 2012-11-06 10:52:15 · 335 阅读 · 0 评论 -
Ring3下Dll注入方法整理汇总
http://www.cnblogs.com/daxingxing/archive/2011/12/16/2290353.html转载 2012-10-22 16:47:39 · 404 阅读 · 0 评论 -
pipe
A pipe is a section of shared memory that processes use for communication. The process that creates a pipe is the pipe server. A process that connects to a pipe is a pipe client. One process writes转载 2012-09-20 09:01:27 · 361 阅读 · 0 评论 -
清空文件内容
//清空文件内容SetFilePointer(hFile,0,NULL,FILE_BEGIN);SetEndOfFile(hFile);转载 2012-09-11 11:34:53 · 1323 阅读 · 0 评论 -
InternetCrackUrl
void CrackUrl(){ URL_COMPONENTS uc; char Scheme[1000]; char HostName[1000]; char UserName[1000]; char Password[1000]; char UrlPath[1000]; char ExtraInfo[1000]; uc.dwStructSize = si转载 2012-08-30 12:52:36 · 1433 阅读 · 0 评论 -
Point And Array你不知道的事2
#include "stdafx.h"#include int main(int argc, char* argv[]){ BYTE byteTmp[MAX_PATH] ; BYTE *pTmp = byteTmp ; __asm { //push the byte array push byteTmp //push the point原创 2012-08-17 08:24:58 · 494 阅读 · 0 评论 -
CComboBox And CListBox ResetContent
// Delete all the items from the combo box.m_pComboBox->ResetContent();ASSERT(m_pComboBox->GetCount() == 0);// Delete all the items from the list box.m_myListBox.ResetContent();ASSERT(m_my转载 2012-07-31 10:52:02 · 768 阅读 · 0 评论 -
使结构体紧凑对齐
linux : __attribute__ ((packed))windows : #pragma pack(1) ... #pragma pack()http://hi.baidu.com/andorid/blog/item/2ccf96240f483d2dd5074255.html转载 2012-08-14 15:15:35 · 1535 阅读 · 0 评论 -
Visual C++线程同步技术剖析
http://www.cnblogs.com/userinterface/archive/2005/04/27/146137.html转载 2012-11-27 13:23:19 · 394 阅读 · 0 评论 -
C语言将字符串转换成对应的数字(十进制、十六进制)
http://wawlian.iteye.com/blog/1315133转载 2012-12-02 12:05:25 · 1739 阅读 · 0 评论 -
VC C++ WinIo按键 键盘模拟
http://hi.baidu.com/linjinxing1987/item/967a1d251e0d0c4447996270转载 2012-12-28 10:20:55 · 2148 阅读 · 1 评论 -
vs2017 无法打开文件“msvcprtd.lib”
刚装的vs2017,创建个默认实例,报这个错误,网上查了一堆,没一个靠谱的.后来发现vs下方其实有个警告信息,说是Qspectre相关的,按连接点进去查看,微软官网有如下信息:说这3个没有安装,于是重新打开vs2017安装包,勾选如下内容安装,再次编译,问题解决.---------------------作者:angellover08来源:CSDN原文:ht...转载 2019-07-12 10:36:30 · 1090 阅读 · 0 评论 -
delphi中的.dpr、.pas和.dfm文件都怎么解释?
.dpr、.pas和.dfm文件都是什么意思啊,有什么区别?DPR: Delphi Project文件,包含了Pascal代码。PAS: Pascal文件,Pascal单元的源代码,可以是与窗体有关的单元或是独立的单元。DFM:Delphi Form File,描述窗体或数据模块及其组件属性的二进制文件。===============================================...转载 2018-04-13 18:12:01 · 4967 阅读 · 0 评论 -
利用veh完成内存补丁功能,以躲避运行时内存检测
点击打开链接转载 2013-03-31 19:26:44 · 1667 阅读 · 0 评论 -
关于VEH+硬件断点打内存补丁 实现细节
点击打开链接转载 2013-03-31 19:50:31 · 2555 阅读 · 0 评论 -
完成端口(CompletionPort)详解
http://blog.csdn.net/piggyxp/article/details/6922277转载 2013-03-29 23:31:39 · 803 阅读 · 0 评论 -
深度探索I/O完成端口
http://blog.chinaunix.net/uid-11640640-id-2139871.html转载 2013-03-29 22:12:15 · 716 阅读 · 0 评论 -
一种躲避运行时代码校验的方法
点击打开链接转载 2013-03-31 12:44:57 · 690 阅读 · 0 评论 -
INT3断点无效,都是ThreadHideFromDebugger惹的祸
INT3断点无效,都是ThreadHideFromDebugger惹的祸http://hi.baidu.com/cppcoffee/item/7380d9bf792c44e04ec7fd26【原创】SSDT HOOK bypass 某游戏 and Themida ThreadHideFromDebuggerhttp://bbs.pediy.com/showthread.转载 2013-02-27 09:37:49 · 3317 阅读 · 0 评论 -
C++ Queues(队列)成员函数及其使用方法
http://www.ok2002.com/cc/cc/s.asp?r=a191619331132914转载 2012-12-17 10:17:22 · 806 阅读 · 0 评论 -
WINIO内核模拟按键
http://www.360doc.com/content/12/0428/21/9067714_207367148.shtml转载 2012-12-28 09:03:25 · 838 阅读 · 0 评论 -
指针小常识
#include "stdafx.h"#include #include #include int main(int argc, char* argv[]){ BYTE * pByte ; BYTE byteArray[] ={0x10 ,0x11 ,0x12} ; pByte = byteArray ; printf("address:%X ,value:%X原创 2012-07-27 21:49:19 · 395 阅读 · 0 评论 -
Example: Getting WMI Data from the Local Computer
Example: Getting WMI Data from the Local Computerhttp://msdn.microsoft.com/en-us/library/windows/desktop/aa390423(v=vs.85).aspx Win32_OperatingSystem class http://msdn.microsoft.com/en-us/转载 2012-07-27 02:25:07 · 712 阅读 · 0 评论 -
MFC获得各类指针的方法
http://www.360doc.com/content/11/1020/10/7940922_157636082.shtml转载 2012-05-14 14:23:54 · 608 阅读 · 0 评论 -
MFC SDI 你不知道的那些事
MFC单文档程序架构解析 http://www.cnblogs.com/HappyXie/archive/2011/05/06/MFC.html The SDI Application单文档程序 http://yanghao.blog.51cto.com/357234/71807转载 2012-05-14 12:43:27 · 646 阅读 · 0 评论 -
gethostbyname获取所有IP(域名解析)
#include "stdafx.h"#include #include #pragma comment (lib,"ws2_32.lib") //int _tmain(int argc, _TCHAR* argv[])int main(int argc, char* argv[]){ int err = 0; char szIP[100] = {0}; char strS原创 2012-04-23 10:48:39 · 3029 阅读 · 0 评论 -
WSAAsyncSelect模型
WSAAsyncSelect模型允许应用程序以Windows消息的形式接受网络事件通知。这个模型是为了适应windows的消息驱动环境而设置的,现在对许多性能要求不高的网络应用程序都采用WSAAsyncSelect模型,MFC中的CSocket类使用了它。WSAAsyncSelect模型最突出的特点是与windows的消息驱动机制融合在一起,这使得开发带GUI界面的网络程序变得很简单。转载 2012-04-23 17:03:58 · 541 阅读 · 0 评论 -
SELECT通信模型缺点
#ifndef FD_SETSIZE#define FD_SETSIZE 64#endif /* FD_SETSIZE */WINSOCK2.h头文件里面的,select通信模型可能会用到这个,可以修改FD_SETSIZE的大小,但是不能超过1024,这个值也不能设置太大,否者严重影响服务程序的性能。转载 2012-04-18 22:35:19 · 826 阅读 · 0 评论 -
c++类函数地址
class AObj;typedef int (AObj::*pfun)();pfun pf_protected1 = NULL;pfun pf_protected2 = NULL;pfun pf_private1 = NULL;pfun pf_private2 = NULL;class AObj{public: AObj(){}; static int a转载 2012-04-11 23:41:26 · 1549 阅读 · 0 评论 -
关于IOCP框架的搭建MyIOCP
最近一直在查看关于IOCP方面的资料发现看别人的简单的代码好像可以理解,但是理解的又不透彻,如何搭建IOCP,单独的写一个IOCP的类是必然的,其实方便的方法是在console环境下来使用这个IOCP类进行显示,接下来我要学习写一个IOCP类,考虑线程安全,考虑处理性能,考虑稳定性,简单清晰的流程。原创 2012-04-09 15:54:36 · 1197 阅读 · 0 评论 -
IOCP你不知道的那些事
问题提出:在Accept或者Acceptex客户端连接以后,按照客户端设计方案,投递第一次WSARecv,在GetQueuedCompletionStatus中,将获取投递该WSARecv成功获取数据的事件通知,为了考虑数据传输的方便性,我们将获取到的数据存储到一个队列中,供后面另外独立的线程处理。在该独立线程中,由事件唤醒,我们分析完毕数据以后,对于每个独立的数据包或者说每个转载 2012-04-06 16:02:08 · 2024 阅读 · 0 评论 -
PostQueuedCompletionStatus
PostQueuedCompletionStatus函数,向每个工作者线程都发送—个特殊的完成数据包。该函数会指示每个线程都“立即结束并退出”.下面是PostQueuedCompletionStatus函数的定义:BOOL PostQueuedCompletionStatus( HANDLE CompletlonPort, DW0RD dwNumberOfBytesTr转载 2012-04-05 17:17:15 · 11807 阅读 · 0 评论 -
PostQueuedCompletionStatus 与 GetQueuedCompletionStatus
PostQueuedCompletionStatus功能函数向一个已经初始完的I/O端口发送数据包,触发GetQueuedCompletionStatus功能调用函数来取得数据包BOOL PostQueuedCompletionStatus(HANDLE CompletionPort, // handle to an I/O completion port DWORDdwNumbe转载 2012-04-05 17:19:55 · 3824 阅读 · 0 评论 -
MFC doc类,view类,frame类之间互相调用
MFC doc类,view类,frame类之间互相调用作者:Fansy2000 (顶顶) 访问应用程序的其它类 获得CWinApp: -在CMainFrame,CChildFrame,CDocument,CView中直接调用AfxGetApp()或用theApp -在其它类中只能用AfxGetApp() 获得转载 2012-05-14 15:08:05 · 5639 阅读 · 0 评论 -
EasySize宏在CFormView类中的使用
点击打开链接转载 2012-06-04 17:57:48 · 665 阅读 · 0 评论 -
BMP格式相关数据结构
// BITMAP_FILE_HEADER(BMP文件头)typedef struct tagBITMAPFILEHEADER { WORD bfType; DWORD bfSize; WORD bfReserved1; WORD bfReserved2; DWORD bfOffBits;转载 2012-05-16 17:58:53 · 502 阅读 · 0 评论 -
Point And Array你不知道的事
#include "stdafx.h"#include BYTE byteTmp[MAX_PATH] ;BYTE *pTmp ;int main(int argc, char* argv[]){ __asm { //array ,set the data ,not the address push 0x1234 pop byteTmp //原创 2012-08-06 20:14:17 · 459 阅读 · 0 评论