比如说我有两个声卡 我要用不是默认的那个声卡来放一个wave文件
解决方案 »
- 在outlook的SelectNamesDialog.Display弹出的对话框如何初始化设置
- 【点击菜单子项,消息响应函数失效】请帮忙看看什么问题,在线等~
- 特急!!button上ToolTip的问题。
- CListCtrl调用SortItems时传递给回调函数的参数有一堆混乱的数字,请大家帮帮忙
- 请问关于SetTimer
- 在服务者提供程序(SPI)中,如何将对方IP转换成主机名
- 急急求助!!!线程怎么用的???
- 读取硬盘物理序列号源代码程序(包含IDE,SCSI,串口),急急急!!!
- VC中多线程获取控件出现错误
- exeBinder如何实现?
- 查询一个时间段内的记录的sql语句怎么写?
- 如何用代码控制,在ComboBox中显示垂直滚动条?
这有个VB的例子:http://developer.ccidnet.com/pub/disp/Article?columnID=322&articleID=31045&pageNO=1在中国游戏开发者和中国游戏资源网上有很多例子的
这个好象刚有人问过了的:
枚举可以使用的声音设备 一般的情况下,可能并不需要枚举可以使用的声音设备,使用缺省设备不会带来什么麻烦(相信用户-上帝:P的设置),但是如果你希望将程序做得更“面对对象”一些,给用户更多更好的选择(很多3D GAME都可以让用户来选择显卡,道理大同小异),那你就需要使用到枚举可供使用的声音设备了。
枚举可供使用的声音设备首先要写一回调函数,在程序每找到一可供使用的声音设备时调用,在那个函数里你可以做任何事,并且它可以拥有任何的合法的名字,但是你必须作为DSEnumCallback声明它,回调函数必须返回一BOOL,TRUE则继续列表,FALSE就退出枚举过程了。
和显示设备的枚举差不多,下面就是载自Dsenum.c的几段代码。由于本人认为使用得不多就没怎么研究(其实也是很简单的:P),所以就不再累赘,后面还有更令人兴奋的东西呢!代码如下://回调函数
BOOL CALLBACK DSEnumProc(LPGUID lpGUID,LPCTSTR lpszDesc,LPCTSTR lpszDrvName,LPVOID lpContext )
{
HWND hCombo = *(HWND *)lpContext;
LPGUID lpTemp = NULL; if ( lpGUID != NULL )
{
if (( lpTemp = malloc( sizeof(GUID))) == NULL )
return( TRUE ); memcpy( lpTemp, lpGUID, sizeof(GUID));
} ComboBox_AddString( hCombo, lpszDesc );
ComboBox_SetItemData( hCombo,
ComboBox_FindString( hCombo, 0, lpszDesc ), lpTemp ); //编辑者注:此句有误
return( TRUE );
}