wince 来电防火墙静音实现的几种办法
1.mixer驱动
优点:直接控制音量,静音实现没有时间限制,可以随时恢复
缺点:有一部分手机根本没有实现mixer这一层驱动
源码:
已丢失
2:注册表:
有2个地方可以改:
这个是改响铃方式,可以修改为振动,响一次,声音逐渐加大等等
a是没反应,script是正常响铃,其他的请查msdn,这个可以改掉为每个联系人定制的音乐改掉声音
HKEY_Current_UserControlPanelSoundsRingTone0Script


#define REG_SCRIPT L"Script"

void SetRing(BOOL Ring)


...{

LONG lRet = 0;

LPWSTR lpszSubKey = REG_SCRIPT;

HKEY hkey = NULL;

//LPWSTR ring;

LPWSTR lpRing = NULL;


lRet = RegOpenKeyEx(HKEY_CURRENT_USER,REG_MUTE,0,0,&hkey);

if(lRet != ERROR_SUCCESS)


...{

return;

}


if(Ring == FALSE)


...{

lpRing = L"a";

}

else


...{

lpRing = L"apw3r";

}


LPBYTE lpbring=new BYTE[MAX_PATH];

memcpy(lpbring, lpRing, MAX_PATH);

DWORD dwringlen = wcslen(lpRing);


lRet = RegSetValueEx(hkey,lpszSubKey,0,REG_SZ,lpbring,dwringlen*2);

RegFlushKey(hkey);

if(lRet != ERROR_SUCCESS)


...{

if(lpbring != NULL)


...{

delete []lpbring;

lpbring = NULL;

}

return;

}

if(lpbring != NULL)


...{

delete []lpbring;

lpbring = NULL;

}

return;

}
这个是改响铃的默认音乐,换一个没有有声音有的就好了
不过不能改掉为每个联系人定制的铃声
HKEY_CURRENT_USERControlPanelSoundsRingTone0]
"Sound"="oemringtone.wav"
不过改注册表有一点不好就是wince不会一直查注册表,如果要恢复声音的话,你在查完数据库之后的时间不多
最后提一下改的时机,由于电话进来时最先得到的时Ril_Ring消息(多方通话不会有,不过也不会响铃),所以在这里
把声音去掉绝对不会有问题
优点:直接控制音量,静音实现没有时间限制,可以随时恢复
缺点:有一部分手机根本没有实现mixer这一层驱动
源码:
已丢失
2:注册表:
有2个地方可以改:
这个是改响铃方式,可以修改为振动,响一次,声音逐渐加大等等
a是没反应,script是正常响铃,其他的请查msdn,这个可以改掉为每个联系人定制的音乐改掉声音



















































这个是改响铃的默认音乐,换一个没有有声音有的就好了
不过不能改掉为每个联系人定制的铃声
HKEY_CURRENT_USERControlPanelSoundsRingTone0]
"Sound"="oemringtone.wav"
不过改注册表有一点不好就是wince不会一直查注册表,如果要恢复声音的话,你在查完数据库之后的时间不多
最后提一下改的时机,由于电话进来时最先得到的时Ril_Ring消息(多方通话不会有,不过也不会响铃),所以在这里
把声音去掉绝对不会有问题

浙公网安备 33010602011771号