请问vb mcisendstring函数中的 capability命令怎么用
发布网友
发布时间:2022-05-22 08:53
我来回答
共1个回答
热心网友
时间:2024-03-07 17:36
Capability:获得已打开的设备的功能,比如能否播放,能否退出,能否记录等等。所有MCI设备都支持这个命令。属性如下:
can detect length:如果设备能侦测长度则返回TRUE
can eject:如果设备能弹出则返回TRUE
can freeze:如果设备支持冻结数据则返回TRUE
can lock:如果设备支持锁定数据则返回TRUE
can monitor sources:如果设备能将一个输入源输出到指定的输出源则返回TRUE,与当前的输入源无关
can play:如果设备能播放则返回TRUE
can preroll:如果设备在cue命令中支持preroll参数则返回TRUE
can preview:如果设备能向前快放则返回TRUE
can record:如果设备支持记录则返回TRUE
can reverse:如果设备能后退则返回TRUE
can save:如果设备能保存数据则返回TRUE
can stretch:如果设备能缩放输出的图像则返回TRUE
can stretch input:如果设备能在数据流解压到帧缓冲的同时能缩放输出的图像则返回TRUE
can test:如果设备能识别“test“关键字则返回TRUE
cav:当与其它项组合使用时,该参数返回申请CAV格式时,videodiscs设备的返回信息,如果没有插入任何videodiscs该参数为默认值
clock increment rate:返回外部时钟将每秒钟分为几个单位,如millisecond返回1000,0表示没有支持的外部时钟
clv:当与其它项组合使用时,该参数返回申请CLV格式时,videodiscs设备的返回信息
compound device:设备支持文件名时返回TRUE
device type:返回设备类型名,其值可以如下:
cdaudio
dat
digitalvideo
other
overlay
scanner
sequencer
vcr
videodisc
waveaudio
fast play rate:返回每秒快放的帧数,如果为0则不支持快放
has audio:如果设备支持音频则返回TRUE
has clock:如果设备支持时钟则返回TRUE
has still:如果设备将文件视为一静态图像比动态视频文件更快则返回TRUE
has timecode:如果设备支持timecode则返回TRUE
has video:如果设备支持视频则返回TRUE
inputs:返回输入设备的总数
maximum play rate:返回最快的播放速度,单位为帧每秒
minimum play rate:返回最慢的播放速度,单位为帧每秒
normal play rate:返回正常的播放速度,单位为帧每秒
number of marks:返回最大的遮罩数量,0表示不支持遮罩
ouputs:返回输出设备的总数
seek accuracy:返回定位某帧的精确度,0表示精确定位,1表示与所要定位的帧的误差不大于1帧
slow play rate:返回慢放的播放速度,单位为帧每秒
uses files:如果复合设备使用的数据保存在文件中则返回真
uses palettes:如果设备使用调色板则返回真
windows:返回设备支持的可以同时显示的窗口数量追问能不能给个实例?
追答capability就是mciSendString第一个参数lpstrCommand
比如第三条can eject:
mciSendString("capability cdaudio can eject", lpszReturnString, lstrlen(lpszReturnString), NULL);
如果设备能弹出则返回TRUE,不能弹出则返回FALSE
剩下的三个参数中,lpstrReturnString是一个字符串,它用来接收mciSendString函数返回的信息(例如,我们在lpstrCommand中的命令是让函数返回打开的文件的设备类型,那么函数就把设备类型的信息保存在lpstrReturnString参数中;这个例子是让函数返回设备时候能弹出);uReturnLength参数用来指定参数lpstrReturnString的长度;hwndCallback是接收“wait”、“notify”消息的窗口句柄,调用时该参数设为0或NULL即可。
参考资料:http://blog.csdn.net/psongchao/article/details/1487788