随笔分类 -  VC文档

1 2 3 4 5 ··· 9 下一页
模拟WSockExpert,使用APIHOOK
摘要:不知道大家用过WSockExpert没有, 它可以用来截获指定进程网络数据的传输.前面我还以为它是通过实时远程注入DLL来更改IAT. 不过后来发现在程序一运行时,它就已经将DLL插入所有进程了,这个跟冰哥写的那个模拟SOCKCAP的程序很相似.似乎是将DLL注入所有进程, 不过再想一下, 如果是这样的话,那么后来启动的程序应该不会被注入DLL(除非用定时^_^,这样就太麻烦了), 考虑到这些, 我估计它是用的HOOK,用HOOK的话就有一点方便:不必考虑有没有读写权限的问题. 也就免了一些麻烦.我在BCB环境中用APIHOOK模拟了一个类似的程序,通过HOOK将DLL插入所有进程,然后截获W 阅读全文
posted @ 2011-06-11 13:10 °ι 、曲 终 阅读(867) 评论(1) 推荐(0) 编辑
使用API判断网络是否连通(InternetGetConnectedState / IsNetworkAlive)
摘要:/ test.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include "test.h"#include <Wininet.h>#include <Sensapi.h>#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE[] = __FILE__;#endif////////////////////////////////// 阅读全文
posted @ 2011-05-24 20:12 °ι 、曲 终 阅读(819) 评论(0) 推荐(0) 编辑
对话框程序启动隐藏窗口
摘要:江湖上有众多传闻,ShowWindow是最令人糊涂的,很多人说在OnInitDialog()加上ShowWindow(SW_HIDE)对话框便不出现,实验证明,这是不行的,可是在非基于对话框的程序,让一个对话框程序隐藏是可以的,这其中有什么玄机?是因为在OnInitDialog()之后会接着调用OnPain()函数,因此呢在OnPain()函数中加上ShowWindow(SW_HIDE);就可以是对话框隐藏,(位置好像除了在 if (IsIconic())这个里面,其他的什么地方都可以),------------我们难道只要这些吗?否,我们是想需要的时候还能让对话框出现,这个也很好办!声明一个 阅读全文
posted @ 2011-05-24 20:08 °ι 、曲 终 阅读(811) 评论(0) 推荐(0) 编辑
VC窗口抖动源码
摘要://窗口抖动实例CPoint CurrentPos; //抖完还要回到这个位置,不要乱跑。CRect rect; //这一段计算主要是为了满足SetWindowPos()的参数要求…不解释吧GetClientRect(&rect);ClientToScreen(&rect);CurrentPos.x = rect.left;CurrentPos.y = rect.top;int FrameWidth;int FrameHight;int CaptionHight; //我当前系统设置上这三个值分别为3,3,22FrameWidth = GetSystemMetrics(SM_C 阅读全文
posted @ 2011-05-24 20:07 °ι 、曲 终 阅读(924) 评论(0) 推荐(0) 编辑
VC查找网页源码指定内容
摘要://查找网页源码,这段代码也可以作为获取外网IP,不过获取外网IP只需要前面一部分就行了,把网页源码读到缓冲区就行了 CString SiteInfo,SiteName=”http://www.ip138.com/ip2city.asp“; CInternetSession mySession(NULL,0); CHttpFile *myHttpFile=NULL; CString myData; myHttpFile=(CHttpFile *)mySession.OpenURL(SiteName); while(myHttpFile->ReadString(myData)) { Sit 阅读全文
posted @ 2011-05-24 20:06 °ι 、曲 终 阅读(768) 评论(0) 推荐(0) 编辑
VC判断进程是否存在函数
摘要:BOOL IsProcessExist(CString ProcessName){BOOL ProcessExist=false;PROCESSENTRY32 my; //用来存放快照进程信息的一个结构体HANDLE l = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); //创建进程快照if (((int)l) != -1){my.dwSize = sizeof(my); //必须这样初始化,否则调用Process32First失败if (Process32First(l, &my)) //获得进程快照中的第一个进程{do{//Cha 阅读全文
posted @ 2011-05-24 20:05 °ι 、曲 终 阅读(2448) 评论(0) 推荐(0) 编辑
VC字符串分割
摘要:给出分割符“;”就行了。后来用VC做相似的字符串分析,VC没有提供这样的函数,上网搜了一下也没有找到,所以自己写了一个函数,虽然函数比较简单,但是或许有朋友需要,刚好可以提供方便!二、函数代码://参数说明:source:需要分割的源字符串;dest:存储分割后的各个字符串变量的目标变量;division:分割字符void decodeCString(CString source, CStringArray& dest, char division){ dest.RemoveAll(); for(int i=0;i〈 source.GetLength();i++) { if(sourc 阅读全文
posted @ 2011-05-24 20:04 °ι 、曲 终 阅读(1206) 评论(0) 推荐(0) 编辑
DLL注入VC教程
摘要:1 新建一个mfc extension dll 这个我想用VC的人都会做的事情吧–!名字叫做mydll2 点击 文件—新建 选择文件 建立一个Header File文件 我们就暂定他的名字叫做Hook吧3 在刚才建立的Hook.h的文件中加入复制以下的函数进去extern“C”LRESULT CALLBACK keybordproc(intcode,WPARAM wparam,LPARAM lparam);//钩子处理函数extern“C”boolWINAPI starthook(DWORD threadID);//启动钩子extern“C”boolWINAPI stophook();//停止 阅读全文
posted @ 2011-05-24 20:00 °ι 、曲 终 阅读(1452) 评论(1) 推荐(0) 编辑
可以穿墙的下载者VC源码
摘要:/*“mini_downloader”code bykardinal p.s.tcompile by vc++ 6.0can not run under win98;*/#include <windows.h>#pragma comment(lib,”user32.lib”)#pragma comment(lib,”kernel32.lib”)//#pragma comment(linker, “/OPT:NOWIN98″) //取消这几行的注释,编译出的文件只有2K大小//#pragma comment(linker, “/merge:.data=.text”)//#pragma 阅读全文
posted @ 2011-05-24 19:55 °ι 、曲 终 阅读(579) 评论(0) 推荐(0) 编辑
CTabCtrl 控件显示位图或者图标
摘要:BOOL CMyPropSheet::OnInitDialog(){BOOL bResult = CPropertySheet::OnInitDialog(); m_imageTab.Create( IDB_TABIMAGES, 13, 1, RGB(255,255,255) ); //创建一个CImageList的类CTabCtrl *pTab = GetTabControl();pTab->SetImageList( &m_imageTab ); //tab控件设置ImageList//也可可以不指定像素,可以使用CImageList 的Add方法实现,可以Add位图或者图标 阅读全文
posted @ 2011-05-24 19:54 °ι 、曲 终 阅读(552) 评论(0) 推荐(0) 编辑
VC操作word
摘要:最近根据项目需要,需要我去用 vc++6.0 作一个 ActiveX web 组件。自己从来没有接触过这方面的编程,这次是头一遭!所以咱就做了,不过倒很出乎我的意料,比我想象的要快很多就完成了。现将 vc++6.0 操作 word 部分的关键代码部分帖出来,共享给大家。因为我在开发的时候遇到了很多问题,并且网上的资料很少,基本都是最基本的操作。所以帖出来,希望能让大家在开发的过程少走些弯路!工具: vc++6.0 。关键字: c++ , MFC 。要求:系统安装 MS OFFICE 2000 。过程:准备工作:1. 创建一个 MFC(EXE) 工程: MFC AppWizard ( exe ) 阅读全文
posted @ 2011-05-24 19:53 °ι 、曲 终 阅读(492) 评论(0) 推荐(0) 编辑
用VC玩转Excel
摘要:如今Excel是越来越重要了,在我们自己开发的程序中不免要和Excel打交道了。利用Automation技术,我们可以在不去了解数据库的情况下玩转Excel,而且你会发现一切竟如此轻松!好了,咱们开始吧,我不喜欢用长篇累牍的代码来故弄玄虚,所以下面的代码都是切中要害的片段,总体上是个连贯的过程,包括启动Excel,读取数据,写入数据,以及最后的关闭Excel,其中还包括了很多人感兴趣的合并单元格的处理。特别说明以下代码需要MFC的支持,而且工程中还要包含EXCEL2000的定义文件:EXCEL9.H,EXCEL9.CPP************************************* 阅读全文
posted @ 2011-05-24 19:52 °ι 、曲 终 阅读(404) 评论(0) 推荐(0) 编辑
socket提交http表单[VC]
摘要:/***************code.h********************/#ifndef _CODE_H_#define _CODE_H_#include <string>using namespace std;class CCode{public:string Encode(const string & str);string Decode(const string & str);};#endif/*****************code.cpp*************************/#include “code.h”string CCo 阅读全文
posted @ 2011-05-24 19:51 °ι 、曲 终 阅读(1654) 评论(1) 推荐(0) 编辑
一个简单的端口扫描程序
摘要:一、TCP扫描技术常用的端口扫描技术有很多种,如 TCP connect() 扫描 、TCP SYN 扫描、TCP FIN 扫描 等,网络上也有很多文章专门介绍,比如http://www.antai-genecon.com/suml/zhishiyy/jingong/duankougj.htm上就介绍了很多我的程序 所使用的最基本的扫描技术:TCP 扫描。操作系统提供的 connect() 系统调用,用来与每一个感兴趣的目标计算机的端口进行连接。如果端口处于侦听状态,那么connect()就能成功。否则,这个端口是不能用的,即没有提供服务。这个技术的一个最大的优点是,你不需要任何权限。系统中的 阅读全文
posted @ 2011-05-24 19:50 °ι 、曲 终 阅读(627) 评论(0) 推荐(0) 编辑
VC Ping IP的类
摘要:Pingip.cpp#include “stdafx.h”#include “ping.h”void CPing::Ping(UINT nRetries,LPCSTR pstrHost,HWND hWnd){SOCKET rawSocket;LPHOSTENT lpHost;UINT nLoop;int nRet;struct sockaddr_in saDest;struct sockaddr_in saSrc;DWORD dwTimeSent;DWORD dwElapsed;u_char cTTL;m_hWnd = hWnd;CString str;//创建一个Raw套接字rawSocke 阅读全文
posted @ 2011-05-24 19:49 °ι 、曲 终 阅读(1606) 评论(0) 推荐(0) 编辑
vc自定义消息的发送与接收的方法实现
摘要:消息传递的方法一:使用ON_MESSAGE使用ON_MESSAGE响应消息,必须配合定义消息#define WM_MY_MESSAGE (WM_USER+100)对于发送消息者-MyMessageDlg,在其MyMessageDlg.h中,定义#define WM_MY_MESSAGE (WM_USER+100)在其MyMessageDlg.cpp中要先添加:#i nclude "MainFrm.h"因为使用了CMainFrame*定义对象。并且要有测试消息的函数:void MyMessageDlg::OnButtonMsg(){ // TODO: Add your con 阅读全文
posted @ 2011-05-12 19:42 °ι 、曲 终 阅读(321) 评论(0) 推荐(0) 编辑
VS2010下Unicode的Base64加密解密程序 [
摘要:#include "stdafx.h" #include "Code.h" int CStringEncodeBase64(const CString &szInput, CString &szOutput) { int nRet = 0; int nLeng = 0; nLeng = (szInput.GetLength() + 1)*sizeof(TCHAR); char *pInput = new char[nLeng]; ZeroMemory(pInput, nLeng); char *pOutput = new char[nLe 阅读全文
posted @ 2011-05-10 09:23 °ι 、曲 终 阅读(2809) 评论(0) 推荐(0) 编辑
生成随机字符串
摘要:估摸着以后极有可能使用到,于是写了一个生成随机字符串的函数。可以自定义生成规则,生成字符串长度。模仿了MS的函数风格,生成规则使用宏的或且规则,返回值使用了布尔型。这里使用布尔返回可能作用不大。直接贴代码吧,同样是两个文件。#pragma once #define RdAllType 0x07 //′óD?D′oíêy×? #define RdNum 0x01 //êy×? #define RdLowercase 0x02 //D?D′ #define RdUppercase 0x04 //′óD′ static TCHAR 阅读全文
posted @ 2011-05-10 09:20 °ι 、曲 终 阅读(355) 评论(0) 推荐(0) 编辑
VC6的工程中加入播放xm音乐的功能(详细操作过程)
摘要:标 题:【原创】在VC6的工程中加入播放xm音乐的功能(详细操作过程)作 者:tankaiha时 间:2005-12-04,02:45:50链 接:http://bbs.pediy.com/showthread.php?t=190991、下载minifmod播放组件,地址是http://www.fmod.org/files/minifmod170.zip,其中关键就是两个文件,minifmod.lib和minifmod.h。2、将上两个文件复制到你的工程目录中,并在源码中添加#include"minifmod.h"。3、找一个.xm的音乐,添加到资源中,资源类别名为&quo 阅读全文
posted @ 2011-05-08 13:33 °ι 、曲 终 阅读(441) 评论(0) 推荐(0) 编辑
VC操作注册表函数
摘要:最近在做一个项目的时候使用到一些操作注册表的函数,现将这些函数记录以下,以方便以后使用 1. 打开注册表键 LONG RegOpenKeyEx( HKEY hKey, // handle to open key主键 LPCTSTR lpSubKey, // subkey name子键 DWORD ulOptions, // reserved。必须是0 REGSAM samDesired, // security access mask读写标识 PHKEY phkResult // handle to open key返回的HKEY类型的指针。以后,读写,关闭用这个指针 );如:// 打开HK. 阅读全文
posted @ 2011-05-02 20:10 °ι 、曲 终 阅读(376) 评论(0) 推荐(0) 编辑

1 2 3 4 5 ··· 9 下一页