随笔分类 - WINDOWS-基础
摘要:1 SafeArray的作用 使用SafeArray SafeArray是VB中的数组存储方式。通过SafeArray,可以在VC++和VB间相互调用。 SafeArray也是Automation中的标准数组存储方式。SAFEARRAY的主要目的是用于automation中的数组型参数的传递。因为在网络环境中,数组是不能直接传递的,而必须将其包装成SafeArray。 实质上SafeArray就是将通常的数组增加一个描述符,说明其维数、长度、边界、元 素类型等信息。 SafeArray也并不单独使用,而是将其再包装到VARIANT类型的变量中,然后才作为参数传送出去。 在VARIAN...
阅读全文
摘要:我们可能经常会用到Thread.Sleep函数来使线程挂起一段时间。那么你有没有正确的理解这个函数的用法呢?思考下面这两个问题: 假设现在是2008-4-712:00:00.000,如果我调用一下Thread.Sleep(1000),在2008-4-712:00:01.000的时候,这个线程会不会被唤醒?某人的代码中用了一句看似莫明其妙的话:Thread.Sleep(0)。既然是Sleep0毫秒,那么他跟去掉这句代码相比,有啥区别么?我们先回顾一下操作系统原理。 操作系统中,CPU竞争有很多种策略。Unix系统使用的是时间片算法,而Windows则属于抢占式的。 在时间片算法中,所有的进...
阅读全文
摘要:1.LPTSTR解释与char*等价,表示普通字符/字符串变量,指向字符/字符串的指针。LP: 长指针(long pointer)。T: win32环境中有一个_T宏,用来标识字符是否采用Unicode编码(两字节表示一个字符),若程序中定义了Unicode,该字符/字符串被作为Unicode字符串,否则就是标 准的ANSI(单字节表示一个字符)字符串。STR:表示这个变量是一个字符串。LPTSTR 转换成 CString(1)直接赋值CString strText;LPTSTR lpszText = _T("LPTSTR >> CString");strTex
阅读全文
摘要:_T("")是一个宏,定义于tchar.h下。#define __T(x) L ## x#define _T(x) __T(x)作用他的作用是让你的程序支持Unicode编码,因为Windows使用两种字符集ANSI和UNICODE,前者就是通常使用的单字节方式,但这种方式处理象中文这样的双字节字符不方便,容易出现半个汉字的情况。而后者是双字节方式,方便处理双字节字符。Windows NT的所有与字符有关的函数都提供两种方式的版本,而Windows 9x只支持ANSI方式。如果你编译一个程序为ANSI方式,_T实际不起任何作用。而如果编译一个程序为UNICODE方式,则编译
阅读全文

浙公网安备 33010602011771号