随笔分类 - WINDOWS
摘要:位图和调色板自然界中的所有颜色都可以由红、绿、蓝(R,G,B)三基色组合而成。针对含有红、绿、蓝色成分的多少,可以对其分别分成0~255个等级,而红、绿、蓝的不同组合共有256×256×256种,因此约能表示1600万种颜色。对每个像素进行了(R,G,B)量化的图像就是位图,其在计算机中对应文件的扩展名一般为.bmp调色板横空的功能在于缓解位图文件存储空间过大的问题,完全利用(R,G,B)组合来存储一个800×600的位图所需要的空间为800×600×3 = 1440000(字节)= 1.37M(字节),假设位图为16色,只需要用4个bit就可
阅读全文
摘要:tmHeight指字符高度(不包括两行字符之间的间距),tmAscent表示字符基线以上部分的高度,tmDescent表示字符基线以下部分的高度。tmInternalLeading表示字符内预留的间距包含在tmAscent中(主要用于显示重音符号等)。tmExternalLeading标准两行字符之间的间距,tmAveCharWidth表示(小写 x)字符的加权平均宽度,tmMaxCharWidth表示字符的最大宽宽度。大写字符的平均宽度通常是字符平均宽度的1.5倍。大写字母平均宽度 = tmMaxCharWith * 1.5=(tm.tmPitchAndFamily&1?3:2)*c
阅读全文
摘要:信息交换用汉字编码字符集·基本集 GB2312概述GB 2312或GB 2312-80是中国国家标准简体中文字符集,全称《信息交换用汉字编码字符集·基本集》,又称GB0GB 2312标准共收录6763个汉字,其中一级汉字3755个,二级汉字3008个;同时收录了包括拉丁字母、希腊字母、日文平假名及片假名字母、俄语西里尔字母在内的682个字符。GB 2312的出现,基本满足了汉字的计算机处理需要,它所收录的汉字已经覆盖中国大陆99.75%的使用频率。对于人名、古汉语等方面出现的罕用字,GB 2312不能处理,这导致了后来GBK及GB 18030汉字字符集的出现。分区表示GB
阅读全文
摘要:http://www.regexlab.com/zh/encoding.htm1. 编码问题的由来,相关概念的理解1.1 字符与编码的发展从计算机对多国语言的支持角度看,大致可以分为三个阶段: 系统内码说明系统阶段一ASCII计算机刚开始只支持英语,其它语言不能够在计算机上存储和显示。英文 DOS阶段二ANSI编码(本地化)为使计算机支持更多语言,通常使用 0x80~0xFF 范围的 2 个字节来表示 1 个字符。比如:汉字 '中' 在中文操作系统中,使用 [0xD6,0xD0] 这两个字节存储。不同的国家和地区制定了不同的标准,由此产生了 GB2312, BIG5, JIS
阅读全文
摘要:Standard Clipboard FormatsThe clipboard formats defined by the system are calledstandard clipboard formats.Constant/valueDescriptionCF_BITMAP2A handle to a bitmap (HBITMAP).CF_DIB8A memory object containing aBITMAPINFOstructure followed by the bitmap bits.CF_DIBV517A memory object containing aBITMAP
阅读全文
摘要:参见USB枚举过程USB枚举过程图示http://blogs.msdn.com/b/usbcoreblog/archive/2010/09/11/9915562.aspxDevice enumeration for a USB port begins when the hub indicate a ...
阅读全文
摘要:http://www.cppblog.com/Lee7/archive/2008/01/07/40650.htmlOverlapped 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),事件内核对象(hEvent), 异步过程调用(apcs) 和完成端口(I/O
阅读全文
摘要:应用程序和驱动程序的通信过程是:应用程序使用CreateFile函数打开设备,然后用DeviceIoControl与驱动程序进行通信,包括读和写两种操作。还可以用ReadFile读数据用WriteFile写数据。操作完毕时用CloseHandle关闭设备。我们比较常用的就是用DeviceIoControl对设备进行读写操作。CreateFile这是一个多功能的函数,可打开或创建以下对象,并返回可访问的句柄:控制台,通信资源,目录(只读打开),磁盘驱动器,文件,邮槽,管道。HANDLE WINAPI CreateFile( _In_ LPCTSTR lpFileName, _In_ ...
阅读全文
摘要:选择 USB 设备的驱动程序模型https://github.com/libusbx/libusbx/wiki/Windows-BackendWinUSBdoes not supportWindows 2003 ( 32bit/64bit )WinUSBdoes not supportWindows XP 64 bit ( not officially support on 64bit Windows XP)WinUSBcannot be used to send an actual reset command to an USB device. This is a limitation of
阅读全文
摘要:PostThreadMessage将一个消息放入(寄送)到指定线程的消息队列里,不等待线程处理消息就返回。既可以发送消息给工作线程,也可以发送给UI线程。其原型如下:BOOL PostThreadMessage( DWORD idThread, UINT Msg, WPARAM wParam, LPARAM lParam);idThread:其消息将被寄送的线程的线程标识符。如果线程没有消息队列,此函数将失败。当线程第一次调用一个Win 32 USER或GDI函数时,系统创建线程的消息队列。要得到更多的信息,参见备注。Msg:指定将被寄送的消息的类型。...
阅读全文
摘要:以前用 Eclipse 做过 Java (学习阶段),没怎么在意。今天用 Zend Studio for Eclipse 才注意,它创建的工程文件和目录都是只有扩展名而没有文件名的东东,如什么“.project”文件,“.cache”和“.settings”文件夹。 若在Windows资源管理器下手动创建这类东东,会提示“必须键入文件名”,奈何? 那就在命令提示符下创建: 1、创建文件夹容易:“md .abc”,就好了! 或者重命名已存在的文件夹 ren xxxx .abc 2、创建(只有扩展名)文件的文件得多写几句了,想起了刚学电脑DOS那会儿,创建批处理文件一样: copy con .xy
阅读全文
摘要:--------------------------------------------------------------、★常见问题及解决方法1、安装过程中出现一下的错误信息提示:Windows cannot copy files required for installation. The files may be corrupt or missing. Make sure all files required for installation are available, and restart the installation. Error code: 0x80070241解决办法:
阅读全文
摘要:http://www.tyutbbs.com/thread-8872-1-1.html彻底摆脱SHIFT的阴影!——用注册表修改输入法热键 众所周知2K/XP系统在设置输入法热键时的组合键比9X/ME要大的多: 只能设置左手ALT+SHIFT或者CTRL+SHIFT,而这个SHIFT就是一个阴魂不散的东西; 在9X/ME下CTRL/ALT/SHIFT要用那几个,要用那一侧的,全都可自己设置!经过本人对Win ME的研究,发现完全可以通过改注册表来修改输入法热键。而且也可推广到XP中! 进入注册表的[HKEY_CURRENT_USER\Control Panel\Input Method...
阅读全文