2012年9月12日
摘要: //下面函数可以,为方便,使用MFC中的CString可根据情况修改BOOL ReplaceSameFile(CString sDir,//要查找的目录 CString sReplaceFile, //要被替换的文件,只是文件名 CString sNewFile//替换的文件,用全路径){if(sDir.IsEmpty() || sReplaceFile.IsEmpty() || sNewFile.IsEmpty())return FALSE;WIN32_FIND_DATA ws_data;memset(&ws_data, 0, sizeof(WIN32_FIND_... 阅读全文
posted @ 2012-09-12 18:05 小水人 阅读(110) 评论(0) 推荐(0) 编辑
  2012年3月13日
摘要: socket IO完成端口模型详解#include "stdafx.h"#include <WINSOCK2.h>#include <stdio.h>#define PORT 5150#define MSGSIZE 1024#pragma comment(lib, "ws2_32.lib")typedef enum{ RECV_POSTED}OPERATION_TYPE; //枚举,表示状态typedef struct{WSAOVERLAPPED overlap; WSABUF Buffer; char szMessage[MSG 阅读全文
posted @ 2012-03-13 12:32 小水人 阅读(367) 评论(0) 推荐(0) 编辑
  2012年3月1日
摘要: 根据句柄获得类??? 阅读全文
posted @ 2012-03-01 16:33 小水人 阅读(169) 评论(0) 推荐(0) 编辑
  2012年2月29日
摘要: 利用端口映射解决:拥有公网IP有限,内网需要访问因特网来源:转载作者:佚名时间:2008-05-16 10:23:58分享到:QQ空间新浪微博腾讯微博人人网端口映射分为动态和静态动态端口映射:内网中的一台电脑要访问新浪网,会向NAT网关发送数据包,包头中包括对方(就是新浪网)IP、端口和本机IP、端口,NAT网关会把本机IP、端口替换成自己的公网IP、一个未使用的端口,并且会记下这个映射关系,为以后转发数据包使用。然后再把数据发给新浪网,新浪网收到数据后做出反应,发送数据到 NAT网关的那个未使用的端口,然后NAT网关将数据转发给内网中的那台电脑,实现内网和公网的通讯.当连接关闭时,NAT网关 阅读全文
posted @ 2012-02-29 10:08 小水人 阅读(2178) 评论(0) 推荐(0) 编辑
  2012年2月28日
摘要: void Invalidate( BOOL bErase = TRUE );该函数的作用是使整个窗口客户区无效。窗口的客户区无效意味着需要重绘,例如,如果一个被其它窗口遮住的窗口变成了前台窗口,那么原来被遮住的部分就是无效的,需要重绘。这时Windows会在应用程序的消息队列中放置WM_PAINT消息。MFC为窗口类提供了WM_PAINT的消息处理函数OnPaint,OnPaint负责重绘窗口。视图类有一些例外,在视图类的OnPaint函数中调用了OnDraw函数,实际的重绘工作由OnDraw来完成。参数bErase为TRUE时,重绘区域内的背景将被擦除,否则,背景将保持不变。它和 Updat 阅读全文
posted @ 2012-02-28 14:44 小水人 阅读(375) 评论(0) 推荐(0) 编辑
  2012年2月24日
摘要: VC中编程对于刚刚开始学习的同学,最大的障碍和问题就是消息机制和指针获取与操作。其实这些内容基本上是每本VC学习工具书上必讲的内容,而且通过MSDN很多问题都能解决。下面文字主要是个人在编程中指针使用的一些体会,说的不当的地方请指正。一般我们使用的框架是VC提供的Wizard生成的MFC App Wizard(exe)框架,无论是多文档还是单文档,都存在指针获取和操作问题。下面这节内容主要是一般的框架,然后再讲多线程中的指针使用。使用到的类需要包含响应的头文件。首先一般获得本类(视,文档,对话框都支持)实例指针this,用this的目的,主要可以通过类中的函数向其他类或者函数中发指针,以便于在 阅读全文
posted @ 2012-02-24 15:42 小水人 阅读(934) 评论(0) 推荐(0) 编辑
  2012年2月23日
摘要: CMainFrame* main = (CMainFrame*)AfxGetApp()->m_pMainWnd;CWnd* pPaneShow = main->wndSplitter.GetPane(0,0);//获得CMsmonitorView窗口指针HWND mhwnd = pPaneShow->m_hWnd;//由指针获得句柄----------------------------------------------------------------------------一下实现相同的效果CMainFrame *pMain=(CMainFrame *)AfxGetA 阅读全文
posted @ 2012-02-23 16:36 小水人 阅读(344) 评论(0) 推荐(0) 编辑
  2012年2月21日
摘要: //此函数得到所选文件的路径BOOLGetDirectoryPath( LPTSTRszPathBuffer, DWORDdwBufferSize, HWNDhWnd=NULL, LPCTSTRszTitle=_T("选择一个文件夹")){ //定义文件夹的路径 //定义指向IMalloc的指针LPMALLOCpMalloc;if(SHGetMalloc(&pMalloc)!=NOERROR) returnFALSE;TCHARszDisplayName[_MAX_PATH];TCHARszBuffer[_MAX_PATH];BROWSEINFOBrowseInfo 阅读全文
posted @ 2012-02-21 14:55 小水人 阅读(194) 评论(0) 推荐(0) 编辑
摘要: HGLOBALQualityJPG( //转换图像为JPG的数据格式并拥有不同的质量,返回值:非零-装有图像数据的堆句柄.零-失败 Image*pImage, //源图像 longlQuality, //质量(0-100) LPDWORDpdwDataSize) //转换后的数据大小{ BOOLbIsSucceeded=FALSE; CONSTUINTuBmpFileHeader= sizeof(BITMAPFILEHEADER)+ sizeof(BITMAPINFOHEADER); //计算需要的内存,最小不得小于1KB(因为在图像比较小的情况下JPG的尺寸可能超过BMP) UINTuIm. 阅读全文
posted @ 2012-02-21 09:41 小水人 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 一口气看完好每天看一章容易被琐事打扰另外先看完全书,再对不明白的章节反复阅读有些时候前面不明白的问题,看完全书以后就自然明白了. 阅读全文
posted @ 2012-02-21 09:21 小水人 阅读(188) 评论(0) 推荐(0) 编辑