自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (6)
  • 收藏
  • 关注

转载 Boost智能指针

智能指针能够使C++的开发简单化,主要是它能够像其它限制性语言(如C#、VB)自动管理内存的释放,而且能够做更多的事情。1、 什么是智能指针智能指针是一种像指针的C++对象,但它能够在对象不使用的时候自己销毁掉。我们知道在C++中的对象不再使用是很难定义的,因此C++中的资源管理是很复杂的。各种智能指针能够操作不同的情况。当然,智能指针能够在任务结束的时候删除对象,除了

2014-02-28 14:31:41 599

转载 iTALC 网络教室平台 编译及使用简介

今天试着基于  iThinkX 平台编译了一份 iTALC 网络教室平台,大概过程如下:准备工作,解决依赖:我 先下了一份git 版的,用的是 cmake 来编译的,结果,发现,这个软件声称需要 Linux-PAM 的支持,但是在官方说明文档中并没提到这个支持,于是,我就试着下了一份 Linux-PAM ,经过几次编译调试,最终用的以下配置命令通过 Linux-PAM

2014-02-18 15:19:44 4076

转载 sprintf用法详解

printf 可能是许多程序员在开始学习C 语言时接触到的第二个函数(我猜第一个是main),说起来,自然是老朋友了,可是,你对这个老朋友了解多吗?你对它的那个孪生兄弟sprintf 了解多吗?在将各种类型的数据构造成字符串时,sprintf 的强大功能很少会让你失望。 由于sprintf 跟printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出

2014-02-17 17:21:59 635

转载 WINVNC源码阅读(七)

VNC协议分析 简介 VNC(Virtual Network Computing)是基于RFB(Remote Frame Buffer)协议进行通信的,是一个基于平台无关的简单显示协议的超级瘦客户系统,由Cambridge的AT&T实验室设计开发的。vnc的缺省端口是main:5900(C/S)和http:5800(B/S)端口。RFB (远程帧缓存) 是一个远程图形用户的

2014-02-17 17:20:51 1564

转载 WINVNC源码阅读(六)

VNC客户端源码Windows版本的VNC客户端源码阅读笔记。while (!hosts.empty()) {char* hostinfo = hosts.front();Thread* connThread = new CConnThread(hostinfo);//创建一个连接线程strFree(hostinfo);hosts.pop_front();}跟进去C

2014-02-17 17:19:47 1240

转载 WINVNC源码阅读(五)

VNC图像更新机制VNC的图像更新机制核心为,桌面区域更新记录策略和更新区域通知策略。桌面更新区域记录主要是通过hooks记录桌面上变化的矩形区域,只记录更新的矩形区不记录具体更新的数据。更新区域记录步骤大致如下:1.wm_hooks截获桌面变化的相关消息,并转化为自定义的消息发送给WMHooksThread线程处理。 2. WMHooksThread 中用SimpleUpdateTrac

2014-02-17 17:17:52 936

转载 WINVNC源码阅读(四)

VNCHOOKS是一个设置全局钩子的动态链接库。先看入口函数view plainBOOL WINAPI DllMain (HANDLE hInst, ULONG ul_reason_for_call, LPVOID lpReserved)  {      // Find out why we're being called      switch (ul_reason_fo

2014-02-17 17:17:02 1109

转载 WINVNC源码阅读(三)

rdr是winvnc用来io操作的一个库工程。IO操作无非两种,写入和读取数据,所以这里每个类都相应地分成了IN和OUT两种操作,先分析IN。  view plainclass InStream {  public:    virtual ~InStream() {}    // check() ensures there is buffer data for at least

2014-02-17 17:16:05 1099

转载 WINVNC源码阅读(二)

omni_thread是一个C++的跨平台的线程包装库。接口文件omnithread.h可以看出一般的跨平台编码的方式:首先通过宏来判断目前所在的操作系统平台(如果你编译的时候出现了“No implementation header file”的提示,请在此文件查找对应的宏,我用的是WIN32系统,所以预定义了__WIN32__),然后包含不同的头文件(WIN32是nt.h头文件),在

2014-02-17 17:15:25 839

转载 WINVNC源码阅读(一)

WINVNC是用bitmap格式保存桌面图像的,所以先补充下相关知识。 图像“像素”(Pixel):把影像放大数倍,会发现这些连续色调其实是由许多色彩相近的小方点所组成,这些小方点就是构成影像的最小单位“像素”(Pixel)。图像分辨率:表示每一个方向上的像素数量,比如640X480,表示由640X480个像素组成。DPI(Dot Per Inch):表示每英寸显示的像素数。图像显

2014-02-17 17:14:21 1557

转载 RFB协议

一、简介RFB(远程帧缓冲)是一个用于远程访问图形用户接口的简单协议。由于它工作在帧缓冲层,所以适用于所有的桌面系统和应用,包括X11,Windows和Macintosh等。我们把用户所在的一端(包括显示器、键盘和鼠标)被称为RFB客户端。而帧缓冲发生变化的一端(桌面系统和应用)称为RFB服务器。RFB协议是一个瘦客户协议。协议设计的重点是减小对客户端的要求。这样,客户端可以运行在多种

2014-02-17 17:04:14 4768

转载 使用VARIANT传递数组的方法及步骤

在使用COM/DCOM写组件时经常要传递数组,一般比如SHORT,LONG等指针可以直接传递相应的指针,但是当遇到需要传递BYTE数组就有问题了,COM不支持BYTE类型参数,传递BYTE数组也就无从说起了。经过查找资料发现使用VARIANT变量可以传递任何类型的数组,随将使用VARIANT数组的方法总结一下。其实在VARIANT传递数组的方法非常简单,只要理解SAFEARRAY数组的使用方法即可

2014-02-14 09:49:16 4436

模拟mspaint程序(简单白板)

1、实现了一个白板控件,并使用画布的概念添加页面。 2、实现了分页控制控件,方便操作白板页面。 3、实现了选择、直线、铅笔、画笔、文字、椭圆、圆、三角形(等边三角形)、直角三角形(等边直角三角形)、矩形、圆角矩形、菱形(正菱形)、五边形(正五边形)、六边形(正六边形)、吸管等工具。 4、实现了颜色填充功能。 5、实现了白板文件的保存与载入功能。 6、实现了两个白板操作命令与数据的同步。 7、实现了项目的拷贝、粘贴等功能。

2016-01-04

ha-hashtab

ha-hashtab - 显示文件MD5值等信息的系统服务

2012-03-27

GDI+开发包

图形设备接口,它的主要任务是负责系统与绘图程序之间的信息交换,处理所有Windows程序的图形输出

2012-03-27

Restorator

一个非常好的汉化工具,对 DELPHI和C程序的支持尤为突出。它的功能很强大,除了一般的编辑操作外,可以采用拖放操作来完成资源的导入导出,可以批量修改资源的语系,还可以利用“资源补丁”创建不受版权限制的补丁程序!

2012-03-27

Ntfs互换Fat32

NTFS与FAT32磁盘格式转换工具,话说 Windows 自带有FAT32转NTFS的工具,悲剧的就是不能把NTFS转换回FAT32,有了这个工具就可以相互转换了~

2012-03-27

Restorator-v2009

一个非常好的汉化工具,对 DELPHI和C程序的支持尤为突出。它的功能很强大,除了一般的编辑操作外,可以采用拖放操作来完成资源的导入导出,可以批量修改资源的语系,还可以利用“资源补丁”创建不受版权限制的补丁程序!

2012-03-27

空空如也

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

TA关注的人

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