DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::
上一页 1 ··· 446 447 448 449 450 451 452 453 454 ··· 474 下一页

2012年10月11日

摘要: Xtrme toolkit,BCGControlBar,SkinMagic,AppFace,Skin++,Uskin++,SYGUI,LibUIDK,GuiToolkit,GardenUI等等,除了后两种一个是开源,一个是免费的外,其余的都是收费的。The Ultimate Toolboxhttp://www.codeproject.com/KB/MFC/UltimateToolbox.aspxGuiToolkit(开源,mfc扩展框架,类似Visual Studio 2003风格)http://www.beyondata.com/default.htmGardenUI(免费,界面效果挺好的, 阅读全文
posted @ 2012-10-11 17:36 DoubleLi 阅读(1702) 评论(0) 推荐(0)

摘要: 路上,有朋友说到服务端异常死掉,而客户端无法感知的情况。我说可以用KEEPLIVE去增加检测,刚好,网上有一文章写得很详细。 <以下是转>http://space.itpub.net/25259598/viewspace-684112在一个正常的TCP连接上,当我们用无限等待的方式调用下面的Recv或Send的时候: ret=recv(s,&buf[idx],nLeft,flags); 或 ret=send(s,&buf[idx],nLeft,flags); 如果TCP连接被对方正常关闭,也就是说,对方是正确地调用了closesocket(s)或者shutdown( 阅读全文
posted @ 2012-10-11 17:26 DoubleLi 阅读(1318) 评论(0) 推荐(0)

摘要: 最近由于项目的需要学习了一下DirectUI方面的东西,主要借鉴的是一个国外程序员写的代码(见引用一),看了后发现它更多的是探讨一种实现的可能性和思路,和实际应用还是有距离的,不过其实现还是很有意思的。在写此小结的时候又发现国内一个程序员将这个代码部分移植到WINCE下的代码(见引用二),因为平台的差异性要完全开发一个WINCE下的实际代码还是需要时间的。由于本人GUI开发做得少,工作中有关这方面的东西主要是提供思路和方法,学习DirectUI的主要目的是为了更新知识学习思路,文章中难免出现错误。一、核心1 、CWindowWnd:窗口对象类(窗口实例对象父类)2 、CDialogBuilde 阅读全文
posted @ 2012-10-11 17:25 DoubleLi 阅读(4668) 评论(0) 推荐(0)

2012年10月8日

摘要: 在C++中,指针的类型转换是经常发生的事情,比如将派生类指针转换为基类指针,将基类指针转换为派生类指针。指针的本质其实就是一个整数,用以记录进程虚拟内存空间中的地址编号,而指针的类型决定了编译器对其指向的内存空间的解释方式。基于上面的理解,我们似乎可以得出一个结论,C++中对指针进行类型转换,不会改变指针的值,只会改变指针的类型(即改变编译器对该指针指向内存的解释方式),但是这个结论在C++多重继承下是 不成立的。看下面一段代码: 1 #include <iostream> 2 using namespace std; 3 4 class CBaseA 5 { 6 public: 阅读全文
posted @ 2012-10-08 16:15 DoubleLi 阅读(554) 评论(1) 推荐(2)

2012年9月27日

摘要: 通俗解释就像上厕所: 门锁了,就等着,等到别人出来了,进去锁上,然后该干什么干什么,干完了,把门打开 门没锁,就进去,锁上,然后该干什么干什么,干完了,把门打开 -------------------------------------------------- 多线程中用来确保同一时刻只有一个线程操作被保护的数据 InitializeCriticalSection(&cs);//初始化临界区 EnterCriticalSection(&cs);//进入临界区 //操作数据 MyMoney*=10;//所有访问MyMoney变量的程序都需要这样写Enter.. Leave... 阅读全文
posted @ 2012-09-27 15:32 DoubleLi 阅读(344) 评论(0) 推荐(0)

摘要: from:http://blog.csdn.net/byxdaz/article/details/4633826#commentsSTL就是Standard Template Library,标准模板库。这可能是一个历史上最令人兴奋的工具的最无聊的术语。从根本上说,STL是一些“容器”的集合,这些“容器”有list, vector,set,map等,STL也是算法和其它一些组件的集合。这里的“容器”和算法的集合指的是世界上很多聪明人很多年的杰作。是C++标准库的一个重要组成部分,它由Stepanov and Lee等人最先开发,它是与C++几乎同时开始开发的;一开始STL选择了Ada作为实现语 阅读全文
posted @ 2012-09-27 00:38 DoubleLi 阅读(543) 评论(0) 推荐(0)

摘要: from:http://blog.csdn.net/byxdaz/article/details/4496575几种网络编程方式:ISAPI、CGI、WinInet、Winsock它们之间的区别:1)ISAPI主要是开发基于浏览器客户端与服务器端程序。效率比CGI方式高,而且也扩展了CGI没有的一些功能。(基于TCP/IP模型中的应用层)2)CGI主要是开发基于浏览器客户端与服务器端程序。(基于TCP/IP模型中的应用层)3)WinInet主要是开发客户端程序。(基于TCP/IP模型中的应用层)4)Winsock主要是基于socket来开发客户端与服务器端程序。(基于TCP/IP模型中的各层) 阅读全文
posted @ 2012-09-27 00:36 DoubleLi 阅读(1140) 评论(0) 推荐(0)

摘要: from:http://blog.csdn.net/byxdaz/article/details/5638680用户模式的线程同步机制效率高,如果需要考虑线程同步问题,应该首先考虑用户模式的线程同步方法。 但是,用户模式的线程同步有限制,对于多个进程之间的线程同步,用户模式的线程同步方法无能为力。这时,只能考虑使用内核模式。用户模式与内核模式线程同步机制比较:用户模式内核模式优点线程同步机制速度快支持多个进程之间的线程同步防止死锁缺点容易陷入死锁状态多个进程之间的线程同步会出现问题。(比如竞争资源、死锁)线程同步机制速度慢线程必须从用户模式转为内核模式。这个转换需要很大的代价:往返一次需要占用 阅读全文
posted @ 2012-09-27 00:32 DoubleLi 阅读(5029) 评论(0) 推荐(1)

2012年9月26日

摘要: 该函数用来子类化一个控件. Subclass(子类化)是MFC中最常用的窗体技术之一。子类化完成两个工作:一是把窗体类对象attach到一个windows窗体实体中(即把一个窗体的hwnd赋给该类)。另外就是把该类对象的消息加入到消息路由中,使得该类可以捕获消息。 SubclassDlgItem可以把对话框中已有的控件与某个窗口对象动态连接起来,该窗口对象将接管控件的消息处理,从而使控件具有新的特性.SubclassDlgItem函数的声明为 BOOL SubclassDlgItem( UINT nID, CWnd* pParent ); 参数nID是控件的ID,pParent是... 阅读全文
posted @ 2012-09-26 00:19 DoubleLi 阅读(469) 评论(0) 推荐(0)

摘要: 一、Windows对象和MFC对象的区别?MFC对象实际上并没有把整个Windows对象都包装在其中。对于窗口:MFC对象它只是有一个窗口句柄而已,这个窗口句柄如果指向一个实际存在的窗口对象(窗口对象,也就是WNDCLASS,是一个Windows对象),那么这个MFC对象就是有效的,否则这个MFC对象是空的。如果你还不明白,请回忆一下,当我们使用MFC创建一个窗口时,是分两步进行的:第一步,new一个CWnd对象,这一步是创建MFC对象,但是其中的HWND还是非法的,因为对应的Windows对象还没有被创建出来;第二步,调用CWnd的成员函数Create创建真正的Windows对象,同时,把先 阅读全文
posted @ 2012-09-26 00:18 DoubleLi 阅读(4741) 评论(0) 推荐(1)

上一页 1 ··· 446 447 448 449 450 451 452 453 454 ··· 474 下一页