DWORD ControlMouseDevice(BOOL bEnable) {	GUID HidGuid;	HANDLE hDevInfo;	SP_DEVINFO_DATA	spdevInfoData;	HidD_GetHidGuid(&HidGuid);	hDevInfo = SetupDiGetClassDevs(&HidGuid, NULL, NULL, DIGCF_PROFILE | DIGCF_DEVICEINTERFACE);	if (INVALID_HANDLE_VALUE == hDevInfo)	{	return -1;	}	spdevInfoData.cbSize = sizeof(spdevInfoData);	int idx;	SP_PROPCHANGE_PARAMS params = { sizeof(SP_CLASSINSTALL_HEADER) };	params.ClassInstallHeader.InstallFunction = DIF_PROPERTYCHANGE;	params.Scope = DICS_FLAG_CONFIGSPECIFIC;	if (bEnable)	{	params.StateChange = DICS_ENABLE;	}	else	{	params.StateChange = DICS_DISABLE;	}	params.HwProfile = 0;	for (idx = 0;SetupDiEnumDeviceInfo(hDevInfo, idx, &spdevInfoData);	idx++)	{	LPTSTR buffer = NULL;	DWORD buffersize = 0;	//ULONG len;	//step1 get the buffer size	DWORD regType;	while (!SetupDiGetDeviceRegistryProperty(	hDevInfo,	&spdevInfoData,	SPDRP_HARDWAREID,	®Type,	(PBYTE)buffer,	buffersize,	&buffersize))	{	if (GetLastError() == ERROR_INSUFFICIENT_BUFFER)	{	// Change the buffer size.	if (buffer) LocalFree(buffer);	buffer = (LPTSTR)LocalAlloc(LPTR, buffersize);	}	else	{	// Insert error handling here.	break;	}	}	OutputDebugString(buffer);	//step2 get the information	while (!SetupDiGetDeviceRegistryProperty(	hDevInfo,	&spdevInfoData,	SPDRP_DEVICEDESC,	®Type,	(PBYTE)buffer,	buffersize,	&buffersize))	{	if (GetLastError() == ERROR_INSUFFICIENT_BUFFER)	{	// Change the buffer size.	if (buffer) LocalFree(buffer);	buffer = (LPTSTR)LocalAlloc(LPTR, buffersize);	}	else	{	// Insert error handling here.	break;	}	}	OutputDebugString(buffer);	CString strDeviceRegistryProperty(buffer);	strDeviceRegistryProperty.MakeUpper();	if (strDeviceRegistryProperty.Find(_T("MOUSE")) != -1)	{	SetupDiSetClassInstallParams(hDevInfo, &spdevInfoData, (SP_CLASSINSTALL_HEADER*)¶ms, sizeof(SP_PROPCHANGE_PARAMS));	BOOL bret = SetupDiChangeState(hDevInfo, &spdevInfoData);	if (!bret)	{	DWORD dwerror = GetLastError();	CString str;	str.Format(_T("GetLastError() == %d"), dwerror);	}	}	}	if (!SetupDiDestroyDeviceInfoList(hDevInfo))	{	DWORD dwerror = GetLastError();	CString str;	str.Format(_T("GetLastError() == %d"), dwerror);	}	return 0; }
这里面只对设备描述里面提到是鼠标的设备进行了操作
if (strDeviceRegistryProperty.Find(_T("MOUSE")) != -1)
以下为代码执行效果:
声音、视频和游戏控制器不见了
今天打开电脑,发现没有声音了,并且扬声器标签的多了一个×号,首先想到了重启电脑,但重启了两遍都没有好,又进行了全面杀毒,还是没有效果。打开设备管理器发现声音、视频和游戏控制器这一项不在了,于是到网上找了一下解决办法,没有找到一个靠谱的,只能靠自己解决了。
一般声音、视频和游戏控制器出问题便是声卡驱动的原因,所以我下载了万能驱动,然后安装后驱动修复,问题就解决了。
可能有些时候驱动损坏了,万能驱动会直接帮你找到电脑匹配型号的驱动,直接下载安装就ok了。碰到其他驱动问题也可以使用此方法。驱动修复工具网上有很多,比如驱动精灵、万能驱动等等都可以。
这是我的一点经验,仅供大家查考,希望能帮大家解决问题。还有一点,大家在没有找到问题的关键时,千万不要随便在网上搜一个方法就试。
如果能够了解到电脑主板型号,将有助于我们对所购买电脑配置的了解,同时还有助于我们购买选择,不过对于很多电脑...2、接下来就会出现“DirectX诊断工具”,可以在里面查看到基本的信息了,包括主板型号。二:使用...
如果能够了解到电脑主板型号,将有助于我们对所购买电脑配置的了解,同时还有助于我们购买选择,不过对于很多电脑小白来说不知道如何去查看电脑主板型号,下面就教教大家怎么去查看电脑主板型号信息。
一:使用DirectX诊断工具查看
1、首先打开命令运行窗,点击“开始”菜单,输入“DxDiag”即可,然后点击运行。
2、接下来就会出现“DirectX诊断工具”,可以在里面查看到基本的信息了,包括主板型号。
二:使用设备管理器查看
1、首先打开“控制面板”,然后点击“硬件和声音”选项。
2、接下来选择“设备管理器”,将会打开界面,然后就可以进行主板型号信息的查看了。
三:使用其它测试软件查看
1、使用一些硬件测试工具来查看即可。
比如以:aida64extreme为例,打开软件,即可看到有硬件信息列表。
2、然后点击对应的选项,即可打开详细的信息了。
四:打开电脑机箱来查看
通过将电脑机箱打开,查看主板上面标签,就可以得到主板的型号信息了。
如果能够知道电脑主板型号将对我们挑选电脑以及了解电脑性能带来很大的帮助,还不知道如何查看电脑主板型号的朋友赶紧按照上面的方法来学习吧。
方法很简单,下面就教大家一、首先我们去设备管理器看看1、比如win10系统,如果在任务栏的右下角托盘里找不到音频图标的话,我们可以点击开始-控制面板,然后选择大图标显示,如下图,如果你能直接看到Realtek高清晰...
我们重装了win10系统后,可能会遇到音频管理器找不到的情况,也就是在win7经常用到的Realtek高清晰音频管理器找不到了,那么我们要怎么打开它,或者怎么安装它呢?方法很简单,下面就教大家
一、首先我们去设备管理器看看
1、比如win10系统,如果在任务栏的右下角托盘里找不到音频图标的话,我们可以点击开始-控制面板,然后选择大图标显示,如下图,如果你能直接看到Realtek高清晰音频管理器,那么我们就可以从这里双击打开它
2、打开后如下图,就可以进行音量的调节,音效的调节,耳机和音响的切换了,还可以设置立体声或者单声道等等,非常的方便。
二、安装Realtek驱动
1、如果任务栏托盘和控制面板里都找不到Realtek高清晰音频管理器,这时候我们的win10系统应该是没有安装Realtek高清晰音频管理器的驱动,所以我们需要单独安装一下就解决了。
2、下载好以后安装它,点下一步到完成就可以
3、安装一会就成功,然后重启一下电脑,就可以在任务栏或者控制面板里找到Realtek高清晰音频管理器的图标了。
4、如上图就是它的软件界面了,可以直接从它看到你电脑上插入了影响还是二级,也能进行一些声卡的设置,比如室内校准,音效等等。
总结:以后大家如果找不到Realtek高清晰音频了,就可以用上面的方法来进行启用,实际上没难度,只需要大家知道是怎么回事就很好解决。