当前位置: 编程技术>其它
本页文章导读:
▪DirectUI的CLabelUI不支持自动换行 DrawText()最后一个参数去掉DT_SINGLELINE,CLabelUI::SetTextStyle()时参数加上DT_WORDBREAK。o了!小王 2013-01-02 23:59 发表评论......
▪判断网线是否插入 可利用IPHELPAPI进行获取MIB_IFROW Info ; // 存放获取到的Adapter参数memset(&Info ,0 ,sizeof(MIB_IFROW)) ; Info.dwIndex = dwIndex ; // dwIndex是需要.........
▪HLSL语言学习及记录 此笔记用于记录D3D中的HLSL学习过程和重点============================================================================HLSL : High Level Shader Language 译为:高级着色语言HLSL语言的语法类似于C语言1. 数据类型HLSL.........
[1]DirectUI的CLabelUI不支持自动换行
DrawText()最后一个参数去掉DT_SINGLELINE,
CLabelUI::SetTextStyle()时参数加上DT_WORDBREAK。
o了!
CLabelUI::SetTextStyle()时参数加上DT_WORDBREAK。
o了!
小王 2013-01-02 23:59 发表评论
[2]判断网线是否插入
可利用IPHELPAPI进行获取
MIB_IFROW Info ; // 存放获取到的Adapter参数
memset(&Info ,0 ,sizeof(MIB_IFROW)) ;
Info.dwIndex = dwIndex ; // dwIndex是需要获取的Adapter的索引,可以通过GetAdaptersInfo和其他相关函数获取
if(GetIfEntry(&Info) != NOERROR){
printf("ErrorCode = %d\n" ,GetLastError()) ;
return ;
}
MIB_IFROW 中有一项 dwOperStatus的参数,它表明当前接口的操作状态
其值如下:
Value Meaning
IF_OPER_STATUS_NON_OPERATIONAL
LAN adapter has been disabled, for example because of an address conflict.
局域网适配器禁用,例如地址冲突
IF_OPER_STATUS_UNREACHABLE
WAN adapter that is not connected.
WAN适配器未连接
IF_OPER_STATUS_DISCONNECTED
For LAN adapters: network cable disconnected. For WAN adapters: no carrier
局域网适配器:网线未插入。WAN适配器:无信号
IF_OPER_STATUS_CONNECTING
WAN adapter that is in the process of connecting.
正在处理连接
IF_OPER_STATUS_CONNECTED
WAN adapter that is connected to a remote peer.
已连接远端
IF_OPER_STATUS_OPERATIONAL
Default status for LAN adapters 默认状态
参考:ms-help://MS.VSCC.v90/MS.MSDNQTR.v90.chs/iphlp/iphlp/getifentry.htm
经测试
拔下网线时,dwOperStatus 值为IF_OPER_STATUS_NON_OPERATIONAL
连接网线时,dwOperStatus 值为IF_OPER_STATUS_OPERATIONAL
Fanze 2013-01-02 17:39 发表评论
[3]HLSL语言学习及记录
此笔记用于记录D3D中的HLSL学习过程和重点
1. 数据类型
1.1 变量声明
1.2 类型修饰符
1.3 row_major与col_major
1.4 寄存器类型修饰符
(2) extern
============================================================================
HLSL : High Level Shader Language 译为:高级着色语言
HLSL语言的语法类似于C语言
1. 数据类型
HLSL中的数据类型有:标准数据类型、向量、矩阵和复杂数据类型。
———|———————————————————————————————————|
类型 取值
———|———————————————————————————————————|
bool TRUE或FALSE
———|———————————————————————————————————|
int 32位signed整形
———|———————————————————————————————————|
half 16位float数值
———|———————————————————————————————————|
double 64位float数值
———|———————————————————————————————————|
float 32位float数值
———|———————————————————————————————————|
1.1 变量声明
常规声明 float fVar ;
声明时初始化 float fVar = 1.0f ;
数组声明 int iVar[3] = {1 ,2 ,3} ; // 声明一个大小为3的整型数组,并初始化为1 ,2,3.
1.2 类型修饰符
(1) const 常量 其值不可改
此类型修饰符表明一个变量的数值不可被渲染代码修改。例如:
const float fConstant = 2.0f ;
同C语言一样,其声明时徐初始化。
1.3 row_major与col_major
这一对修饰符出现在定义一个矩阵时。将其放在矩阵之前,例如:
row_major float 4x4 WorldMatrix ;
其作用在于指定当前定义的矩阵中的元素,使用行主序还是列主序进行存放(矩阵的行列式)。
示例:
col_major 11 12 13 14
21 22 23 24
31 32 33 34
41 42 43 44
row_major 11 21 31 41
12 22 32 42
13 23 33 43
14 24 34 44
行或者列主序决定了从常量表或从渲染器输入中读取矩阵元素的顺序。
1.4 寄存器类型修饰符
寄存器类型修饰符用于高速编译器变量的作用域和生命期
(1) static
static float fVale = 1.11f ;
具全局作用。Static关键字防止渲染器变量暴露给应用程序。
同C语言一样,在函数内部的变量,其值保存到下一次调用。
(2) extern
extern float4 fExternal ;
与Static相反。其义同C语言关键字。
最新技术文章: