自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

转载 struts2采用convention-plugin实现零配置

转自:ITeYe作者:javeye

2014-04-14 10:37:32 341

原创 JSP框架:A框架中刷新B框架问题

问题是这样的:我在main.jsp中定义了3个框架:

2014-04-08 16:25:32 683

原创 VC线程中通过自定义消息打开新的对话框(模态与非模态)

在线程中直接打开已添加的对话框或者通过调用函数的方式打开对话框,虽然编译无错误提示,但运行后有错误提示。这里列出通过消息机制打开对话框的方法。假设有Test1Dlg与Test2Dlg两个对话框,其中Test1Dlg为主对话框,Test2Dlg为添加的对话框。将

2013-12-26 07:49:15 862

原创 VC线程中通过自定义消息引用对话框控件

在线程中直接调用控件会提示错误,可以通过传递消息的方式间接地调用控件。假设有个对话框:TestDlg ,通过线程调用其编辑框控件(ID:IDC_EDIT_RECV)线程:DWORD WINAPI TestProc(LPVOID lpParameter){ char tempBuf[20]; int n=0; while (TRUE) { n++;

2013-12-25 23:06:14 851

转载 keybd_event,mouse_event的使用及虚拟键值表

转自:csdn作者:dijkstar模拟鼠标产生鼠标事件、键盘事件有时候非常有用,比如在自动化测试中。源程序在:http://download.csdn.net/detail/dijkstar/4035890关键程序:比如一个应用:自动关闭弹出的Messagox对话框(http://blog.csdn.net/dijkstar/article/details/8761481)(20

2013-12-19 08:44:58 1025

转载 hook 鼠标键盘消息实例分析

1、木马控制及通信方法包括:双管道,端口重用,反弹技术,Hook技术,今天重点引用介绍一下hook的用法,hook信息后可以将结果发送到hacker邮箱等,实现攻击的目的。转自:http://hi.baidu.com/mousetopshow/item/a951102d679f6e8f9c63d1b0钩子能截获系统并得理发送给其它应用程序的消息,能完成一般程序无法完成的功能。掌握钩子的

2013-12-18 22:47:03 587

转载 VC++中StretchBlt图像失真问题的解决办法

在 VC 中使用 StretchBlt 会碰到一些与点阵图大小缩放相关的一些问题。在扩展一个点阵图时,StretchBlt必须复制图素行或列。如果放大倍数不是原图的整数倍,那么此操作会造成产生的图像有些失真。  如果目的矩形比来源矩形小,那么StretchBlt在缩小图像时就必须把两行(或列)或者多 行(或列)的图素合并到一行(或列)。完成此操作有四种方法,它根据装置内容伸展模式属性来

2013-12-13 10:20:26 832

原创 多线程同步之关键代码段(临界区)

关键代码段(临界区)工作在用户方式下。关键代码段(临界区)是指一个小代码段,在代码能够执行前,它必须独占对某些资源的访问权。通常把多线程中访问同一种资源的那部分代码当做关键代码段。临界区好比公用电话亭,若想要使用电话亭,得先判断里面是否有人,若有人,则等待至里面的人离开。临界区相关函数:void InitializeCriticalSection(LPCRITICAL_SECTIO

2013-12-11 21:42:00 760

原创 多线程同步之事件对象(Event Object)

事件对象属于内核对象,多用于多线程间的同步。我觉得用红绿灯能比较形象地描述事件对象运作的机理:将行人和机动车辆比作两个线程,道路即为共享资源,若行人和机动车辆同时过马路则存在较大安全隐患,所以建立红灯与绿灯两个事件。灯亮为有信号状态,其对应的线程可以继续活动;灯灭则为无信号状态,其对应的线程需要等到灯亮才能运行。事件对象原型如下:HANDLE CreateEvent( LPSE

2013-12-11 20:33:39 427

转载 多线程同步、异步

转自:csdn作者:_Proxy1、首先明确一点,对于单核CPU,任意一个时刻只有一个线程在运行。那么既然这样,多线程还有什么意义呢? 举例来说,现在只有一个人,要做好几个任务。单线程就是,任务一个一个地做,必须做完一个任务后,再去做另一个任务。多线程就是一会做这个任务,一会做那个任务,每个任务做一会,不停的切换。显然,最后把所有的任务做完,多线程必定比单线程更耗费时间。为什么?因为,多线

2013-12-11 19:46:13 374

转载 vc中调用WM_PAINT消息

转自:新浪博客作者:风铃1. WM_PAINT消息根本就不用SendMessage来实现,当窗口出现无效区时,系统会自己发送这个消息,而用Invalidate()或者InvalidateRect就会产生无效区而发送WM_PAINT   void Invalidate( BOOL bErase = TRUE );  该函数的作用是使整个窗口客户区无效。窗口的客户区无效意味着需要重绘,

2013-12-05 09:42:52 1035

转载 VC++之使用CFile类操作文件

VC++之使用CFile类打开文件转自:百度空间作者:幽谷小舍一、CFile类         1.1、CFile类,一个提供二进制文件操作接口的类,是MFC文件操作类之基础。         1.2、用CFile类打开文件                  1.2.1、定义CFile对象,后调用open()函数打开文件CFile m_file;              

2013-11-28 09:28:02 1174

转载 Socket的正确关闭

转自:csdn作者:hunkcaiTIME_WAIT状态 如果服务端的Socket比客户端的Socket先关闭,会导致客户端出现TIME_WAIT状态,占用系统资源。 所以,必须等客户端先关闭Socket后,服务器端再关闭Socket才能避免TIME_WAIT状态的出现。 判断客户端Socket的关闭 最近试验发现,当客户端Socket关闭时,服务端的Socket会

2013-11-28 08:33:54 1039

转载 对话框的建立(模态与非模态)

MFC中对话框有两种形式,一个是模态对话框(model dialog box),一个是非模态对话框(modeless dialog box)。 一、模态对话框(model dialog box)        在程序运行的过程中,若出现了模态对话框,那么主窗口将无法发送消息,直到模态对话框退出才可以发送。       点击模态对话框中的OK按钮,模态对话框会被销毁。

2013-11-28 08:25:00 434

转载 GetWindowRect与GetClientRect

先调用GetWindowRect后再调用ScreenToClient,这个时候得到的rect和直接使用GetClientRect得到的值是相等的。有时候需要获得窗口矩形的大小和客户区矩形的大小二者的值,故需要分别调用GetWindowRect和GetClientRect。如果只需要获得客户区矩形的大小,调用GetClientRect就行了。GetWindowRect和GetClientRect函数

2013-11-21 09:38:17 949

转载 VC++中的CDC类

转自:新浪博客作者:雪后DE阳光 VC++中的CDC类(VC++学习笔记) 在学习VC++中,CDC类是在显示数据,或者使用图形,或者使用文本中必不可少的。Windows使用与设备无关的图形设备环境(DC :Device Context) 进行显示 。MFC基础类库定义了设备环境对象类----CDC类。    CDC与CGdiObject的关系  说道CDC类就不能

2013-11-21 09:25:41 1417

原创 CreateThread()函数的使用及参数的传递

CreateThread将在主线程的基础上创建一个新线程,大致做如下步骤:1.在内核对象中分配一个线程标识/句柄,可供管理,由CreateThread返回2.把线程退出码置为STILL_ACTIVE,把线程挂起计数置13.分配context结构4.分配两页的物理存储以准备栈,保护页设置为PAGE_READWRITE,第2页设为PAGE_GUARD5.lpStartAddr和lp

2013-11-21 09:17:51 1972

原创 无连接Socket中服务端对客户端的记录

在无连接Socket中,客户端每隔一段时间(计时器中设定的)向服务器发送一次连接,如果服务端要建立一个信息表记录客户端的IP并给客户端编号,那么服务端接收到客户端发来的连接后,有以下两种情形需要处理:①该客户端是第一个连接的客户端;②该客户端是第一个之后连接的客户端;③该客户端是已经连接过的客户端对于①,服务端需要建立一个文件,并在信息表中给客户端编号并添加信息;对于②,服

2013-11-13 18:58:26 478

原创 CString的一些应用

CString 是一种很有用的数据类型。它们很大程度上简化了MFC中的许多操作,使得MFC在做字符串操作的时候方便了很多。CString位于头文件afx.h中。CString对应的对象时字符串,所以一些用于字符串的操作也可以使用于CString如:#include#includevoid main(){ CString s="abc"; CString b="abc

2013-11-13 16:41:18 426

原创 整型与字符串的转换

一般来说,函数对于其内参数的格式有着严格的定义,比如该参数只能是int型或者char型等。如MFC列表控件:int InsertItem( int nItem, LPCTSTR lpszItem );  (nItem是控件中行的索引,限制为int型 、lpszItem是控件头的名字)有些时候,我们希望在格式定义为字符串的参数中添加整型变量,而不需要进行复杂的操作。比如给Ipszltem赋值

2013-11-13 09:40:50 544

转载 CWnd与HWND的区别与转换

CWnd与HWND的区别与转换  转自:网易博客作者:甩都不甩的窝一、区别HWND是句柄,CWnd是MFC窗体类,CWnd中包含HWND句柄成员对象是m_hWnd.HWND是Windows系统中对所有窗口的一种标识,即窗口句柄。这是一个SDK概念。   CWnd是MFC类库中所有窗口类的基类。微软在MFC中将所有窗口的通用操作都封装到了这个类中,如:ShowWindow等等

2013-11-07 01:52:34 495

原创 变量与对话框的交互:UpdateData(FALSE)&&UpdateDate(TRUE)

UpdateData(TRUE)和UpdateData(FALSE)的区别 当你使用了ClassWizard建立了控件和变量之间的联系后:当你修改了变量的值,而希望对话框控件更新显示,就应该在修改变量后调用UpdateData(FALSE);如果你希望知道用户在对话框中到底输入了什么,就应该在访问变量前调用UpdateData(TRUE)。UpdateData(

2013-11-07 01:42:33 612

转载 使用WinSock实现简单的服务器/客户端通信程序

使用WinSock实现简单的服务器/客户端通信程序转自:百度空间有的同学在毕业设计中做的课题是跟网络通信程序设计相关的。特地查找到了CSDN上的一些资料以便在需要的时候参考。(这中间涉及到多线程、套接字、TCP/IP等概念,比较综合。)VC6实例1  VC6实例2URL: http://blog.csdn.net/changsure/archive/20

2013-11-07 00:14:33 1792

原创 流方式以及数据包方式的对比

流方式以及数据包方式的对比在Windows系统中利用Socket进行网络通信有两种主要方式:流方式(Stream Socket),也称为面向连接方式:用于实现TCP协议。其特点是通信可靠,对数据有校验和重发机制,通常用来作数据文件的传输,如FTP;数据报方式(Datagram Socket),又称为无连接方式:这种通信方式对应的是UDP协议。由于取消了重发校验机制,能够达到较高

2013-10-31 00:51:30 1165

转载 VC++ 列表控件的使用方法

VC++ 列表控件的使用方法 列表控件可以看作是功能增强的ListBox,它提供了四种风格,而且可以同时显示一列的多中属性值。MFC中使用CListCtrl类来封装列表控件的各种操作。通过调用BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID );创建一个窗口,dwStyle中可以

2013-10-30 23:57:53 549

转载 两种创建监听套接字的方法

两种创建监听套接字的方法假设在本机(localhost)的5555端口创建监听套接字(listening socket)第一种方法来自《UNIX环境高级编程》第2版structaddrinfo *ailist,*aip;struct addrinfo hint;int listenfd;hint.ai_flags =AI_CANO

2013-10-30 23:46:12 1301

转载 如何利用C语言写文件传输的程序

转自csdn作者:sophisticated如何利用C语言写文件传输的程序在网上搜了很久,也没有找到很具体和实用的发送文件的C源程序,于是就自己研究了半天,编写了个可以无差错传文件的程序,拿出来晒晒,以下中括号里的就是调用的函数,具体源文件我放到资源里了,大家可以去下载http://download.csdn.net/user/sophisticated。    服务器端(发送文件

2013-10-23 23:16:45 2103

转载 MFC用户界面设计

转自:新浪博客作者:cornflower MFC用户界面设计 一(创建一个MFC工程的框架)打开VC++6.0选择New,出现如下界面:然后选中MFC AppWizard[exe] ,即我们将创建一个MFC的可执行文件,然后在Project Name下面的框中写入这个工程的名字,注意:工程的名字不要是中文的,且不要太过于长(到底多长是长我也不知道),最好使用英语的单词来

2013-10-23 22:38:46 781

原创 sizeof(结构体)大小判断

当定义结构体的时候,如果没定义结构体内成员函数(空结构体),则结构体大小为1(存在内存,便于区分不同的结构体);如果定义结构体的同时定义了其成员函数,即使没初始化,系统也为其分配了内存空间,这里就是讨论其空间大小的计算。有以下例子(VC6编译):#include struct A{    int a;    char b;};struct B{    i

2013-10-20 20:55:01 622

转载 C++钩子(Hook)实现初探

转自oschina作者:小编辑 C++钩子(Hook)实现初探 所谓钩子可以百度下里面有很多解释,我可以不必在这里啰嗦了。研究了下,个人理解就是用来截获 WINDOWS消息的API,基于消息机制的WINDOWS程序所产生的消息可以用钩子来截获。钩子把截获的消息做什么呢?这个要看程序员的心情了,可以 把消息继续向下传递,也可以修改掉甚至不传递。在截获的过程中也可以把消息记录下来,实现

2013-10-16 13:47:07 929 1

转载 UDP广播与多播

UDP广播与多播作者:legend使用UDP协议进行信息的传输之前不需要建议连接。换句话说就是客户端向服务器发送信息,客户端只需要给出服务器的ip地址和端口号,然后将信息封装到一个待发送的报文中并且发送出去。至于服务器端是否存在,或者能否收到该报文,客户端根本不用管。通常我们讨论的udp的程序都是一对一的单播程序。本章将讨论一对多的服务:广播(broadcast)、多播(multica

2013-10-16 13:37:04 517

转载 对PGM可靠组播的调查

对PGM可靠组播的调查作者:great3779注:为了叙述方便,以下的组播均指可靠的组播。 调查结果:1.    组播适合于局域网一对多的传送数据,相比TCP能极大减少对服务器端的压力,特别是客户端数量巨大时尤为明显;相比UDP则可靠性更好,同时组播目的性更强。2.    组播每个包的最大字节数为65535(即:64K-1)。因此若数据包的字节数大于65535,则需预先手动

2013-10-16 13:30:50 750

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除