- 博客(14)
- 收藏
- 关注
原创 广播通信
//客户端代码#include #include using namespace std;#pragma comment(lib,"ws2_32.lib")int main(){ WSADATA wsa; WSAStartup(0x0202, &wsa); SOCKET sSendSock = socket(AF_INET, SOCK_DGRAM, 0); BOOL
2013-11-20 11:01:10 918
转载 CDC,CClientDC,CPaintDC,CWindowDC 比较区别
CDC,CClientDC,CPaintDC,CWindowDC 比较区别 MFC中的CDC,CClientDC,CPaintDC,CWindowDC的区别 CDC是Windows绘图设备的基类。 CClientDC: (1)(客户区设备上下文)用于客户区的输出,与特定窗口关联,可以让开发者访问目标窗口中客户区,其构造函数中包含了GetDC,析构函数中包含了ReleaseDC。 CPain
2013-11-19 11:34:52 851
转载 完成端口
CreateIoCompletionPort:CreateIoCompletionPort函数关联一个已打开的文件实例和新建的或已存在的I/0完成端口,或者创建一个未关联任何文件的I/O完成端口。该函数两个明显作用:1. 用于创建一个完成端口对象。2. 将一个句柄同完成端口关联到一起,创建一个I/O完成端口对象,用它面向任意数量的套接字句柄,管理多个I/O请求。即该函数的两
2013-11-15 11:28:53 727
转载 Overlapped I/O模型深入分析
简述: Overlapped I/O也称Asynchronous I/O,异步I/O模型。异步I/O和同步I/O不同,同步I/O时,程序被挂起,一直到I/O处理完,程序才能获得控制。异步I/O,调用一个函数告诉OS,进行I/O操作,不等I/O结束就立即返回,继续程序执行,操作系统完成I/O之后,通知消息给你。Overlapped I/O只是一种模型,它可以由内核对象(hand),事件
2013-11-14 11:27:01 894
转载 组合和聚合的区别?
记得在当时学习uml总是不好分清聚合与组合的关系,找工作时特地复习了这块的内容,结果正巧被面试官问道,这两天又在搞这块的内容,对聚合与组合有了更清楚的了解:聚合:表示两个对象之间是整体和部分的弱关系,部分的生命周期可以超越整体。如电脑和鼠标,就可以用一下图形表示:组合:表示两个对象之间是整体和部分的强关系,部分的生命周期不能超越整体,或者说不能脱离整体而存在。组合关系的“部
2013-11-13 17:07:00 769
转载 Layered Window(分层窗体,透明窗体)
Layered Window(分层窗体,透明窗体) 2011-10-04 07:53:22| 分类:API&VC |字号 订阅//为窗体添加WS_EX_LAYERED属性,该属性使窗体支持透明ModifyStyleEx(0,WS_EX_LAYERED); 效果1.1 窗体整体透明,子控件也透明 //设置Alpha值为150BY
2013-11-11 15:41:47 1984
转载 windows笔记-API实现透明窗体
windows笔记-API实现透明窗体win7的透明的透明效果看起来炫吧 ^_-。其实用简单的系统API就可以实现了。如下:SetLayeredWindowAttributes:BOOL SetLayeredWindowAttributes( HWND hwnd, // 透明窗体的句柄 COL
2013-11-11 15:19:25 1247
转载 WSAAsyncSelect模型
Winsock 提供了一个有用的异步I/O模型。利用这个模型,应用程序可在一个套接字上,接收以Windows消息为基础的网络事件通知。具体的做法是在建好一个套接字后,调用WSAAsyncSelect函数。该模型最早出现于Winsock的1.1版本中,用于帮助应用程序开发者面向一些早期的16位 Windows平台(如Windows for Workgroups),适应其“落后”的多任务消息环境。应用
2013-11-11 13:15:16 797
转载 InvalidateRect和Invalidate的区别
Invalidate(); 执行时,是先用背景刷清屏以后,再重新绘画 InvalidateRect(rect), 他执行时, rect区域以背景刷清屏,rect以外的区域不调用背景刷,而是将屏幕上现有的内容(如图片图形等)作为背景,在这个背景上直接画图。 若是,图片和背景反差很大,则使用Invalidate() 会发生闪烁
2013-11-07 15:02:55 2376
转载 C++ 编码规范
1 前言本编码规范针对C++语言。制定本规范的目的:提高代码的健壮性,使代码更安全、可靠;提高代码的可读性,使代码易于查看和维护。本文档分别对C++程序的格式、注释、标识符命名、语句使用、函数、类、程序组织、公共变量等方面做出了要求。规范分为两个级别——规则和建议。规则级的规范要求开发人员必须要遵守,建议级的规范开发人员应尽量遵守。各项目组在用C++语言或基于C++语言的开发工
2013-11-07 14:29:47 808
转载 Select模型
Socket描述符准备好的条件 select函数的功能就是允许进程指示内核等待多个事件中的任一个发生,并仅在一个或多个事件发生或经过某个指定的时间之后才唤醒进程;我们可以调用函数select并通知内核仅在以下情况发生时才返回:A:集合{1,4,5}中的任何描述符准备好读;或B:集合{2,7}中的任何描述符准备好写;或C:集合{1,4}中的任何描述符有异常条
2013-11-07 13:43:55 756
转载 DUI类库介绍
DuiLib库 我们把它分为四个模块(核心,基础,控件,另外的库),当前有些也会把它分为5个模块(用户界面层,数据,事件处理,渲染模块,插件模块)我们先讲下四个模块里包含了那些类一.核心模块:UIMarkup(解析XML), CMarkupNode(节点),CRenderClip(渲染区域控制), CRenderEngine(渲染引擎), CPaintManagerUI(绘制管理者),
2013-11-06 13:10:44 1226
转载 GetSockOpt和SetSockOpt
1.closesocket(一般不会立即关闭而经历TIME_WAIT的过程)后想继续重用该socket: BOOL bReuseaddr=TRUE; setsockopt(s,SOL_SOCKET ,SO_REUSEADDR,(const char*)&bReuseaddr,sizeof(BOOL)); 2. 如果要已经处于连接状态的soket在调用closesocket后强
2013-11-05 11:53:51 839
原创 PreTranslateMessage使用
PreTranslateMessage是消息在送给TranslateMessage函数之前被调用的,绝大多数本窗口的消息都要通过这里,比较常用,当你需要在MFC之前处理某些消息时,常常要在这里添加代码. MFC消息控制流最具特色的地方是CWnd类的虚拟函数PreTranslateMessage(),通过重载这个函数,我们可以改变MFC的消息控制流程,甚至可以作一个全新的控制流出来。只有穿过消息队
2013-11-03 11:52:34 1171
空空如也
glTexImage2D接口耗时问题
2023-12-25
片段写入多个附件问题
2022-08-26
TA创建的收藏夹 TA关注的收藏夹
TA关注的人