
c++
文章平均质量分 77
sx1989827
这个作者很懒,什么都没留下…
展开
-
vc编写魔兽争霸显血程序
<br /> 现在魔兽已经更新到1.24了,可以自动显血了,想当年在1.20版本时还要开外挂来显血时的痛苦可以少了很多,其实编写魔兽的显血程序非常简单的,废话不多说,看代码:<br />#include <iostream><br />#include "windows.h"<br />using namespace std;<br />main(){<br />HWND h=FindWindow(0,"Warcraft III");<br />while(1){<br /> PostMessag原创 2010-08-31 10:52:00 · 1542 阅读 · 1 评论 -
xml操作类更新(头文件分离)
<br /> xml.h<br />#include <iostream> #include <string> #include <vector> #include "windows.h" #include "wininet.h" using namespace std; #pragma comment(lib,"wininet.lib") class xml; class nodecollect;原创 2010-11-30 11:32:00 · 1225 阅读 · 0 评论 -
c++编写xml操作类(添加关于多种编码的支持)
<br /> 今天上网具体看了下关于编码格式的资料,想自己的xml解析程序一直都只支持ansi,那么我们就现学现用,让它支持Unicode和utf8编码吧。<br /><br />xml.h:<br /><br />#include <iostream> #include <string> #include <vector> #include "windows.h" #include "wininet.h" using namespace st原创 2010-11-30 18:34:00 · 1598 阅读 · 0 评论 -
c++ 编写自己的小型游戏开发库(续)
<br /> 前面自己写了一个小的游戏开发包,今天闲着无聊,就用这个来写个简单的小游戏,之前给出的那个例子有问题,在此更正下.<br /><br />#include "gameclass.cpp"#include <ctime>wnd *w;surface *img;int x,y;int x1=100,y1=100;LRESULT ondown(HWND h,WPARAM w,LPARAM l){ if(w==VK_LEFT){ if(x>0){ x-原创 2010-10-08 17:13:00 · 897 阅读 · 0 评论 -
关于html-x 2.0的发布
<br /> 时隔半年多了,终于发布自己的html-x2.0版本,在这半年的时间里,由于许多工程要用到这个html解析器,所以自己也做了许多修改,现在发布目前完善的版本,当然,可能还有许多bug,只能待以后慢慢发现了。<br />#include<iostream>#include<string>#include "windows.h"#include "wininet.h"using namespace std;#pragma comment(lib,"wininet.l原创 2010-10-21 10:09:00 · 1472 阅读 · 3 评论 -
vc编写仿qq截图程序
一直想研究一些程序是如何截图,今天闲下来看了下资料,捣鼓了一下// photoDlg.cpp : implementation file//#include "stdafx.h"#include "photo.h"#include "photoDlg.h"#include #ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE[] = __FILE__;#endi原创 2010-12-14 18:10:00 · 4771 阅读 · 7 评论 -
再谈远程线程注入
<br /> 好久没弄这个玩意了,感觉有些过时了,但是这两天突然想到了这个,突然发现有些疑问要解决,所以回过头来看看这个。<br /><br />#include<stdio.h>#include"windows.h"typedef struct{ DWORD address; char a[10];}info;typedef int (_stdcall *msgbox)(HWND, LPCTSTR, LPCTSTR, UINT);DWORD WINAPI t(LPVO原创 2010-12-16 10:55:00 · 887 阅读 · 0 评论 -
vc编写网页弹窗过滤程序
首先声明下,该程序不是bho,所以在通用性方面不是很好,只支持ie8。用到屏蔽的是hook技术,挂WH_GETMESSAGE和WH_CALLWNDPROC两个钩子,主要钩住wm_create消息,然后关闭。// hook.cpp : Defines the entry point for the DLL application.//#include "stdafx.h"#pragma data_seg("MySec")HHOOK h=0,h1=0;int flag=0;原创 2010-11-02 09:45:00 · 2054 阅读 · 1 评论 -
多线程编写文件搜索器
<br /> 这两天去上海找工作了,所以博客一直没有更新,发下我走之前的一段代码吧,是关于多线程的文件搜索的。<br />#include <iostream>#include <Windows.h>#include <string>#include <stack>using namespace std;stack<string> dir;CRITICAL_SECTION cs;CRITICAL_SECTION cs1;HANDLE quit;struct in原创 2010-12-24 10:04:00 · 1116 阅读 · 0 评论 -
vc编写文件夹与文件打包程序
<br /> 这个程序其实写了有一段时间了,今天把它发上来吧,以便以后备用。<br /><br /> 程序分为配置端和释放端,有点想winarar,不过没有压缩的功能。<br /> 发到了自己的csdn下载,有兴趣的朋友可以去下载源代码,有什么问题大家一起交流。原创 2010-12-24 10:09:00 · 1431 阅读 · 2 评论 -
c++编写xml操作类(更新)
<br /> 继续接着上一篇,在这个版本里加入了select选择器,可以操作简单的xpath,还加入了loadurl方法。<br /><br />#include <iostream> #include <string> #include <vector>#include "windows.h" #include "wininet.h" using namespace std; #pragma comment(lib,"wininet.lib")原创 2010-11-27 15:12:00 · 1466 阅读 · 0 评论 -
c++编写xml操作类(完整版)(更新)
<br /> 对上次那个xml操作类做了下更新,加了gettext,puttext,selectnodes等几个属性,修复了一些bug。<br /><br />#include <iostream> #include <string> #include <vector> using namespace std; class xml; class nodecollect;class node{ public: string getattr(str原创 2010-11-26 15:30:00 · 4170 阅读 · 1 评论 -
vc编写多线程文件下载器
<br /> 今天写了个多线程的文件下载器,可以自定义线程数,不废话,看代码:<br />#include <iostream>#include "windows.h"#include "wininet.h" using namespace std; #pragma comment(lib,"wininet.lib")struct file{DWORD start;DWORD len;char url[1024];char localfile[1024原创 2010-09-02 17:37:00 · 2928 阅读 · 0 评论 -
浅谈关于http的多线程断点续传下载
<br /> 本来这篇文章一直都想写的,只是前两天发点小烧,身体不适,所以耽搁了。我查了下网上资料,发现大部分都是ftp多线程下载的,关于http还真的不多,所以想写篇文章阐述下,自己才疏学浅,哪里写的不好,还望高手见笑了。<br /> 前两篇文章都是用wininet来编写的,代码貌似没有问题,但是试验中发现没有办法实现真正的多线程下载,下载速度慢得很,而且即使是多线程,也不能同时internetreadfile。后来看网上说要用异步方式来写,看了下介绍,感觉太麻烦了,听说那些下载软件都原创 2010-09-14 09:58:00 · 1512 阅读 · 4 评论 -
封装http操作类
近期在对http数据包的研究过程中感觉自己应该封装个http类,虽然ms有wininet,功能也很强大,但我们自己也试着写个吧,练练手。#include #include #include "mysocket.h"#include using namespace std;class http{public: http(); ~http(); void addheader(char*,char*); void setmethod(char *); v原创 2010-09-14 16:24:00 · 1932 阅读 · 0 评论 -
c++封装字节操作类
一直以来希望有个可以直接操作字节的东东,貌似mfc里有个cbytearray这个类,不过我还没怎么用过,所以干脆自己写一个。#include using namespace std;class mybyte{public: mybyte(); ~mybyte(); void assign(char*,int); void add(char*,int); void add(char); int remove(int,int); void clear();原创 2010-09-14 17:41:00 · 1782 阅读 · 0 评论 -
改良后的文件下载器
<br /> 秉着少用全局变量的原则,我把前篇的代码改了一下,尽量达到重用的效果:<br />#include <iostream>#include <ctime>#include "windows.h"#include "wininet.h" using namespace std; #pragma comment(lib,"wininet.lib")struct file{ DWORD start; DWORD len; char url[1024]原创 2010-09-05 01:03:00 · 1154 阅读 · 2 评论 -
vc编写改键精灵
<br /> 突然想起魔兽高手们都喜欢在游戏里自定义改键,那么这些是怎么实现的呢,记得有个程序叫魔兽改键精灵,那么我们也来仿照它写一款吧。<br /> 网上的一些源码都是挂WH_GETMESSAGE钩子的,需要一个dll,比较麻烦,那么我们就化难为易,还记得低级钩子吗,对,就是它了,不用dll也行。<br /><br />#include <iostream>#include "windows.h"using namespace std;typedef struct tagK原创 2010-09-15 13:29:00 · 2733 阅读 · 1 评论 -
用socket来发送邮件
以前用vb时,记得有个mail控件,后来接触到了cdo.messages这个玩意,发邮件是蛮方便,那还是在vbs的情况下,后来看了下php,perl,发现发邮件一个函数就可以了,呵呵,那么这些背后的细节是什么呢,还是用socket来揭示下吧: 邮件发送离不开一样东西,SMTP,即简单邮件传输协议,对应端口为25,它是一个应用层协议,基于tcp连接的,有自己的协议结构。下面是它的结构展示: (1)建立TCP连接。 (2)客户端向服务器发送HELLO命令以标识发件人自己的身份,然后客户端原创 2010-09-29 13:30:00 · 2997 阅读 · 1 评论 -
c++ 编写自己的小型游戏开发库
之前接触了SDL,的确是个很好的轻量级游戏引擎,其实自己一直也有个想法,自己来开发个游戏库,呵呵,有点大了,现在想想,在windows下也就是对图形操作和窗口消息的封装吧。试着写写看吧,花了两天的时间,搞出个雏形,发来给大家分享下:#pragma warning(disable:4786)#define ULONG_PTR ULONG#include #include #include #include #include #include #pragma com原创 2010-10-05 22:49:00 · 1680 阅读 · 0 评论 -
c++ 编写xml操作类
今天花点时间写了个xml的操作类,模拟树来实现结点的数据结构的。废话不说,看代码:#include#includeusing namespace std;class xml;class node{public:string getattr(string);void setattr(string);node *createnode(string);node *createtextnode(string);void appned(node *);voi原创 2010-10-06 15:03:00 · 1005 阅读 · 1 评论 -
自己写itoa和atoi
<br /> #include<iostream>#include <cmath>using namespace std;char * _itoa(int i){char *s=new char[100];memset(s,0,100);int ii=0,v=i;while(v!=0){ s[ii++]=v%10+'0'; v=v/10;}int l=strlen(s);for(ii=0;ii<l/2;ii++){ char c=s[l-ii-1原创 2010-12-27 17:49:00 · 1031 阅读 · 0 评论 -
c++编写字符串分割函数
<br />#include<iostream>#include<string>#include<vector>using namespace std;void _strtok(char *s,char *k,vector<string>& str){char *ss=s;char *p=strstr(ss,k);while(p){ if(p-ss>0){ char *tt=new char[p-ss+1]; memset(tt,0,p-ss+1); str原创 2010-12-27 18:42:00 · 848 阅读 · 0 评论 -
c++编写字符串查找函数
<br /> 昨天去一家公司笔试,有一道题是编写字符串查找函数,我为了赶时间(题目蛮多的),所以手机百度了下,抄了份网上的代码。不过后来想想还是蛮内疚的,所以还是自己写了一份代码作为补偿,也是对自己的锻炼吧。<br /><br />#include<iostream>using namespace std;char* _strstr(char *s,char *k){ if(*k==0){ return 0; } for(int ii=0;ii<=strlen(s原创 2010-12-31 09:23:00 · 2087 阅读 · 0 评论 -
c++编写字符串编码类
废话不多说,上代码:#include #include #include using namespace std;class CEncodeString{public: CEncodeString(); ~CEncodeString(); void LoadString(char *,int =ansi); void LoadString(WCHAR原创 2012-10-13 13:10:44 · 1332 阅读 · 0 评论 -
c++编写json解析类
好久没有更新博客了,今天就将我之前写的一些代码陆续发上来。json.h#include#include using namespace std;class CJson{public: enum TYPE{STRING,LONG,ARRAY,OBJECT,BOOL,NAMEDOBG,STRINGA,LONGA,ARRAYA,OBJECTA,BOOLA,NAMEDO原创 2012-10-13 12:20:24 · 3661 阅读 · 0 评论 -
c++编写gif动画现实控件
gif.hclass CGIFImage : public CStatic{ // Constructionpublic: CGIFImage(); void LoadGIF(WCHAR *); void Pause(); void Resume(); int m_state; // Attributesprivate: struct _sTHPar原创 2012-10-13 12:33:35 · 5143 阅读 · 0 评论 -
c++编写简单线程池
先上代码:#include #include #include using namespace std;#define WM_THREADSTART WM_USER+1#define WM_THREADEND WM_USER+2#define WM_THREADADD WM_USER+3#define WM_THREADPOOLEND WM_USER+4#d原创 2012-10-13 14:00:24 · 2250 阅读 · 0 评论 -
c++编写webui内核
这篇文章我一直想写,但是一直没有动笔,因为这里面牵扯的内容太多,而且有一部分并非我原创,拿出来有班门弄斧之嫌,所以一拖再拖,现在感觉可以把自己的一些经验心得和大家分享一下了。 现在webui的使用范围很广,在一些大型软件上随处可见,其实这东西说白了也不难,就是c++(当然,也可以是其他语言)加个webbrowser,然后客户端与网页进行通信,牵扯到的主要是com技术。webbr原创 2012-10-14 02:44:25 · 4388 阅读 · 2 评论 -
mfc简单换肤
mfc程序的界面一向是大家所诟病的,我之前在写微笔记的时候一直痛心界面的丑陋,所以我下定决定自己写一个换肤的库,虽然有不少bug,但是毕竟是自己的成果,还是蛮开心的。MySkin.h#pragma warning(disable:4786)#include #ifndef ULONG_PTR//#define ULONG_PTR unsigned long*#include原创 2012-10-14 18:56:13 · 4445 阅读 · 0 评论 -
c++解决迷宫寻路问题
// time.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include #include #include #include using namespace std;int box[8][10]={{1,1,1,1,1,1,1,1,1,1},{1,0,1,1,原创 2013-03-05 14:13:42 · 3777 阅读 · 0 评论 -
c++编写计算器
一直想写一个可以由用户动态输入并计算结果的计算器。比如(1+2)*3+4这样的表达式。好了,废话不多说,下面来说一下我写的这个程序。#include#include#includeusing namespace std;stack s1;stack s2;bool compare(char a,char b){ if(a=='^'){ if(b==a) ret原创 2010-02-25 00:01:00 · 1768 阅读 · 1 评论 -
关于mysocket类的更新
<br /> 这两天写一个远程控制的程序,在本机上测试没问题,但是换成远程测试的时候,许多问题就来了,这才发现不是简单的send和recv就可以了事的,实际的网络通信很复杂,数据不是一次发送和接受就可以成功的,所以要做判断,然后循环发送和接受。<br />mysock原创 2011-01-31 18:58:00 · 1918 阅读 · 0 评论 -
c++编写xml操作类(完整版)
#include #include #include using namespace std; class xml; class nodecollect;class node{ public: string getattr(string); void setattr(string,string); void appned(node *); void removechild(int); void i原创 2010-11-09 15:36:00 · 3662 阅读 · 0 评论 -
vc用com操作ie
<br /> 这几天看了关于com的介绍,算是弄清楚点头绪了,说实话,ms这玩意的确蛮麻烦,以前一直很烦这个,但是,烦归烦,到头来还是要弄清楚。所以有了下文。<br /> 记得自己以前都是用vb操作com的,很简单快捷。还记得控制ie的shellwindows对象吗?对,今天就用vc来实现它。<br /> <br /> #include <iostream>#import <shdocvw.dll>#include "shlwapi.h"#include <mshtml.h>#i原创 2010-11-18 13:53:00 · 2606 阅读 · 0 评论 -
探索c++小特性,取值与赋值
<br /> a[1]="asd"这样的代码我想大家一定经常看到吧,我们往往对这样的操作符重载取值很容易,那么怎么赋值呢,其实不难,关键在于c++的引用特性:<br /><br />#include <iostream>using namespace std;class A{public: A(); int& operator[](int d){ //data=d; return data; }private: int data;};A::A(){原创 2010-11-22 13:21:00 · 678 阅读 · 0 评论 -
再谈链表排序
<br /> 前两天去面试,有一道题目是关于链表排序的,当时就用了个以前的方法,把链表存到一个数组里,再对数组排序,再还原链表,后来面试官说这个效率太低了,回来想想也是,就算个笨方法吧,所以觉得自己应该锻炼下,写了比较通用的,快捷的链表排序算法,便有了下面程序。<br /><br />#include <iostream> #include <windows.h>using namespace std; struct link{ int data; link *next原创 2011-01-18 23:09:00 · 800 阅读 · 0 评论 -
vc操作wshshell对象
<br /> 以前在vb和vbs下wscript.shell这个玩意是很有用的,到了vc下这玩意几乎绝迹了,不过我不甘心,决定要将它重新挖掘出来。<br /><br />#include <iostream> #import "wshom.ocx" rename("FreeSpace","LFreeSpace")#include <atlbase.h>#include <comutil.h>using namespace IWshRuntimeLibrary;原创 2010-11-24 15:34:00 · 1225 阅读 · 0 评论 -
vc操作word读写
<br /> 继续带来一片com的应用文章,关于word的读写问题,其实关于word的读写操作代码不麻烦,麻烦在于类库的引用,试验了很长时间草搞定。<br /><br />#pragma warning(disable:4259)#import "C://Program Files//Common Files//Microsoft Shared//Office11//MSO.DLL"using namespace Office;#import "C://Program Fi原创 2010-11-25 14:38:00 · 3200 阅读 · 0 评论 -
vc操作wmi遍历进程信息
<br /> 废话不多说,看代码:<br />#define _WIN32_DCOM#include <iostream>#include <comdef.h>#include <Wbemidl.h>#include <conio.h>#include <atlbase.h>using namespace std;#pragma comment(lib, "wbemuuid.lib")void SetPrivilege() { HANDLE原创 2010-11-24 17:47:00 · 2075 阅读 · 1 评论