![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
VC++
ShadowWalker
这个作者很懒,什么都没留下…
展开
-
C语言数组负索引
先看负索引的示例:#include int main(void){int array[] = {1, 2, 3, 4, 5, 6};int *ip = &array[-1];int sum = 0;int i = 1;for(; i {sum += ip[i];}printf("%d\n", sum);return 0;}运行结果:21原创 2013-09-03 18:10:23 · 5972 阅读 · 0 评论 -
C规范(1) - 结构体或类定义的好习惯
请看如下代码typedef struct Result{ char name[20]; int age; Rect rect; char *pic; long takesTime;}Result;然后再定义Result r1;Result *r2 = new Result();此时调试中的内存状态如下图所示假如入我要给pic负值,并先做非空判断if(r1.pi原创 2014-02-12 15:15:22 · 7049 阅读 · 0 评论 -
gdi++编程
1. 引入GDI++ stdafx.h //...typedef unsigned long ULONG_PTR, *PULONG_PTR;#include using namespace Gdiplus;#pragma comment (lib, "GdiPlus.lib")static ULONG_PTR m_pGdiToken;static struct Gdi原创 2014-02-12 12:57:09 · 840 阅读 · 0 评论 -
被占用文件操作三法
无疑我们中的很多人都会遇到需要读写被其它进程占用的文件的情况,比如说在编写backup程序或是trojan的时候。能从系统中抽出SAM文件,或是读取其它某些用标准方法无法成功访问的文件显然是件不错的事情。比如说当用标志dwShareMode = 0打开文件时,其它进程就不能对它进行访问了。一个很好的例子就是网络寻呼机程序Miranda。这个程序在自己工作的时候不允许别人打开自己的数据库。假设我们需转载 2014-05-04 12:34:55 · 1038 阅读 · 0 评论 -
文件监控(二) 代码
文件监控(二) 代码 ,目前监控值z原创 2014-05-05 10:42:50 · 1773 阅读 · 0 评论 -
分别用VB、Delphi、VC++、ASM四种语言写的一个用UpdateResource修改EXE文件图标的多源码示例
===============================================Delphi Code:===============================================转载 2014-05-15 22:58:33 · 1540 阅读 · 0 评论 -
文件监控(一) 处理结构(pthread)
文件监控结构(pthread)//①开始监控目录// 将监控到的文件放入listvoid* ThreadWatcher(void* pParam){ dzlog_notice("[线程开启]开始监控目录 ThreadWatcher PID : 0x%x ", pthread_self() ); Cwx_kk_upDlg * dlg = (Cwx_kk_upDlg*)pParam;原创 2014-04-27 16:31:28 · 797 阅读 · 0 评论 -
文件监控 Linux Windows
Linux : inotifyWindows:原创 2014-04-27 16:29:07 · 717 阅读 · 0 评论 -
蓝屏dump分析教程,附分析工具WinDbg(x86 x64)6.12.0002.633下载
蓝屏dump分析教程,附分析工具WinDbg(x86 x64)6.12.0002.633下载时间:2012年09月14日 | 栏目:技术方案 | 评论:16条评论 | 点击: 49,572 次 +复制本文链接本文标签: 工具 , 蓝屏一、WinDbg是什么?它能做什么? WinDbg是在windows平台下,强大的用户态和内核态调试工具。它能够通过转载 2014-04-27 17:28:07 · 15577 阅读 · 2 评论 -
float
C:#include "stdio.h"int main(int argn, char **argv){ unsigned int a = -10; int b = a; float c = a; printf("num: %x\n",a); printf("a=%u\n",a); printf("b=%d\n",b); printf("c=%f\n",c); ret原创 2015-02-12 18:27:04 · 688 阅读 · 0 评论 -
MFC显示图片/StretchDIBits失真/显示倒了
打开图片获取RGB或者BGR数据后显示图片CStatic* videoWall = (CStatic*)GetDlgItem(ID_VIDEO_WALL);显示 CRect rc; videoWall->GetWindowRect(&rc); int nResult = ::StretchDIBits( videoWall->GetDC()->m_hDC, 0原创 2014-02-10 16:49:14 · 4532 阅读 · 0 评论 -
PostMessage 窗口无响应
PostMessage发送到了窗口主线程,但是主线程消息函数却无响应1. 窗口句柄获取错误::PostMessage(dlg->m_hWnd, MESSAGE_RESULT, 1L, 1L);2. 消息的ID太大了, 经测试 消息的ID最大是 0x9999#define MESSAGE_RESULT WM+USER + 0x100 //没问题#define ME原创 2014-02-11 13:03:18 · 4132 阅读 · 0 评论 -
#define 高级用法(Ex) __FILE__ __FUNCTION__ __LINE__
#define 高级用法(Ex) __FILE__ __FUNCTION__ __LINE__我们在写程序的时候,总是或多或少会加入一些printf之类的语句用于输出调试信息,但是printf语句有个很不方便的地方就是当我们需要发布程序的时候要一条一条的把这些语句删除,而一旦需要再次调试的时候,这些语句又不得不一条条的加上,这给我们带来了很大的不便,浪费了我们很多的时间,原创 2013-09-05 16:56:19 · 3913 阅读 · 0 评论 -
变量命名规范
匈牙利命名法:http://baike.baidu.com/link?url=hC90V7o7rOLOrrbj5Y4Zr899xawxywJyGoE1-uS6hRBYTUQvbT8Qzv1PcpW9RUqc骆驼命名法http://baike.baidu.com/view/1165629.htm帕斯卡命名法http://baike.baidu.原创 2013-10-06 10:39:33 · 692 阅读 · 0 评论 -
怎样让自己的程序进程不让别人强行关闭掉
写了一个像杀毒软件的软件,不能让别人结束这个程序的进程。有一种方法是将自己进程提升为系统进程的,这种没有试过另外一种方法,拦截API函数,有两种方法:1.在强行关闭一个进程时系统调用的是BOOL WINAPI TerminateProcess( HANDLE hProcess, UINT uExitCode);我们如果利用钩子拦截TerminatePro转载 2013-10-22 10:00:13 · 7146 阅读 · 0 评论 -
判断程序是否是以 管理员 身份运行 visual c++
// 判断本程序是否是以管理员身份运行的 //BY :暗影行者// date: 20110716BOOL ExeIsAdmin() { #define ACCESS_READ 1 #define ACCESS_WRITE 2 // if(g_bIsNT==FALSE) return TRUE; HANDLE hToken; DWORD dwStatus; DW原创 2013-10-22 10:17:39 · 3327 阅读 · 0 评论 -
C++ 内存分配方式详解
在C 中,内存分成5个区,他们分别是堆、栈、自由存储区、全局/ 静态存储区和常量存储区。栈,就是那些由编译器在需要的时候分配,在不需要的时候自动清楚的变量的存储区。里面的变量通常是局部变量、函数参数等。堆,就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个 delete。如果程序员没有释放掉,那么在程序结束后,操作系统会自动回收转载 2013-10-22 12:28:20 · 1052 阅读 · 0 评论 -
进程共享变量#pragma data_seg用法 / 数据共享/进程通信
#pragma data_seg介绍 用#pragma data_seg建立一个新的数据段并定义共享数据,其具体格式为: #pragma data_seg ("shareddata") HWND sharedwnd=NULL;//共享数据 #pragma data_seg() -------------------------------转载 2013-10-22 12:43:48 · 1296 阅读 · 0 评论 -
以管理员身份运行指定程序 visual c++
_declspec(dllexport)int WINAPI icePub_runByAdmin(char *strAppPathName,char *strSuParam);//以管理员身份运行指定程序 visual c++int runByAdmin(void){ int retCode=-1; typedef int (WINAPI ICEPUB_RU原创 2013-10-22 10:16:46 · 3896 阅读 · 0 评论 -
C/C++控制台输出不同颜色的字体
在控制台输出不同颜色的字效果代码:#include "stdio.h"#include "windows.h"int main(int argn, char **argv){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_GREEN); printf("Hello原创 2013-11-21 00:41:43 · 8824 阅读 · 0 评论 -
我的服务端之内存池
内存池(Memory Pool)一、前言1、操作系统的内存分配方式1.1、连续分配方式顾名思义,这种分配方式,会将进程分配在连续的空间。连续分配方式一般可以分为固定分配方式、动态分配方式和伙伴系统(固定分配方式与动态分配方式的折衷方案)。1.2、基本分页存储管理方式1.3、基本分段存储管理方式注:以上说的分配方式,自个可以到网上去搜索一下,方便理解以下内容。转载 2014-01-07 16:52:48 · 804 阅读 · 0 评论 -
IplImage CBitmap HBITMAP BITMAP之间的相互转换
//Karl_bmp.h/*****************************************************************function: IplImage CBitmap HBITMAP BITMAP之间的相互转换*Write-By:ShadowWalker*Date:2012-4-25①.IplImage 2 CBitmap ②.CBitma原创 2013-10-22 09:54:34 · 1075 阅读 · 2 评论