8563|20

61

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

请教下,我在多普达577w中,把系统电话进程cprog.exe关闭了,然后我播放音乐,播放不出来了,是什么原因呢?有什么办法把音乐播放出来呢?? [复制链接]

请教下,我把系统电话进程cprog.exe关闭了,然后我播放音乐,播放不出来了,是什么原因呢?有什么方法么,我想用自己的软件来处理来电,来电后播放自己的来电声音,怎么把声音弄出来,声音函数是执行到了,但是声音出不来是什么原因呢,我是用playsound函数.没把系统电话进程cprog.exe关闭,声音是可以出来的,但是关闭系统电话进程cprog.exe,声音就出不来了,大哥大姐谁知道,能跟我说下么,谢谢了,++++++++++++++++++

最新回复

虽然还没成功,但还是感谢你们提的建议,谢谢!!!!!  详情 回复 发表于 2007-12-9 10:47
点赞 关注

回复
举报

49

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
cprog.exe是关不掉的,Windows系统目前都没有办法能正常卸载进程。
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
那我想请教下,我把cprog.exe关闭掉后,拨放音乐为什么没有声音呢,是什么原因引起的呢????能告诉我什么原因么,如何解决呢,谢谢了!!!!!!!!拜谢!!!!!!!!
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

4
 
已经说过了,是不能关闭系统进程的,强行终止意味着异常。
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

5
 
我已经实现过了,是可以的呀
void  CMainControl::fnDirectCloseProcess()
{

        HWND hwndSystemPhone = NULL;
       
        while(true)
        {

                hwndSystemPhone = FindWindowW(L"MSCprog",   NULL);
                if (hwndSystemPhone!= NULL)
                {
                        //PlaySoundW(NULL,(HMODULE)hwndSystemPhone, SND_RESOURCE | SND_ASYNC);
                        PostMessageW(hwndSystemPhone,WM_CLOSE,0,0);
                        lineHandoff(m_poMainControl->m_hCall,L"MSCprog",NULL);
                        Sleep(2000);
                        //ShowWindow(hwndSystemPhone,SW_HIDE);
                }
        }
       
}
可以关闭的
但是如果不这样做的话,我不想用它的来电呢,我想自己弄个,我想做个拨打和接听都用自己程序的软件,只是系统来电速度太快了,隐藏都没什么效果,隐藏后不久又冒出来,如何处理这个来电问题呢,如何屏蔽掉系统来电呢
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

6
 
那如果不关闭电话进程cprog.exe,来电的时候怎么隐藏来电界面呢,我想用自己的来电界面呢,而且还得隐藏来电声音,而这个声音我控制不了,如何解决呢???????
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

7
 
能不能用更底层一些的方法在来电进入时,在cprog.exe处理来电前,拦截它呢。
就像拦截短信一样。
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

8
 
用什么方法,能在cprog.exe处理来电前,拦截它呢?????有方法么
 
 
 

回复

76

帖子

0

TA的资源

一粒金砂(初级)

9
 
http://www.ppmaze.cn/5449/5449157.htm

网上随便搜到一个网址,你看看有没有用了。
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

10
 
我发了,但不知道能不能行,你QQ或MSN多少,加个,谢谢,我QQ:595428286,MSN panyunone@hotmail.com
 
 
 

回复

86

帖子

0

TA的资源

一粒金砂(初级)

11
 
呵呵,加我也没用啊, 我没有资料啊
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

12
 
那有什么办法来处理这个问题呢,呵呵
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

13
 
那有什么办法来处理这个问题呢,呵呵
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

14
 
lz啊,这个防火墙可是商业软件啊。
就算有人知道也不一定会告诉你代码啊。
我也是只知道用ril而已,不知道更多了。

我又搜到一个,
http://topic.eeworld.net/u/20070301/16/8b64b12e-d3b5-4568-9593-38864f7395a8.html

多去网上找找吧。
 
 
 

回复

61

帖子

0

TA的资源

一粒金砂(初级)

15
 
我实在是不理解你为什么一直钻牛角尖,写程序不是这样写地,兄弟

1.你如何证明你能正确退出cprog.exe进程?PostMessageW(hwndSystemPhone,WM_CLOSE,0,0);只是发送销毁窗口的消息给cprog.exe进程,但是cprog.exe可能有多个线程,可能有多个窗口,在没有看到源码的情况下,强行终止主线程,或主窗口,没有异常才奇怪。

2.弹出窗口和声音都是正常情况,以前的帖子都回复过你,RIL消息是广播,注册的程序都有份接收,窗口你可以尝试去隐藏而不是结束,声音可以尝试去静音,总之方法多得是。

3.防火墙只有在RIL层或改协议栈才能做得完美,其他任何方法都是有缺陷的。
 
 
 

回复

77

帖子

0

TA的资源

一粒金砂(初级)

16
 
哦,谢谢兄弟
我想不用系统的来电,我想用自己做个来电界面来处理来电呢.
用RIL还是隐藏来电窗口和静音呢,哪个能比较好的实现这个效果么,能给个例子或部分代码么,谢谢了!!!!
加下QQ:595428286,MSN: panyunone@hotmail.com 好么,很多东西得请教你,谢谢!!!!!
 
 
 

回复

74

帖子

0

TA的资源

一粒金砂(初级)

17
 
问题就在于RIL驱动你改不了,如果你是自己做的手机就能改。

1.静音问题你要改播放脚本,(你不会真的等来电才改延迟吧?当然是的先改)
  HKEY_Current_User\ControlPanel\Sounds\RingTone0\Script
2.cprog界面没试过隐藏,你改看看或者看看下面。
  [HKEY_LOCAL_MACHINE\Software\Microsoft\Shell\Rai\:MSCPROG]
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

18
 
兄弟,那我用不了RIL了,用来电铃声静音和隐藏来电界面的方法:

存在2个问题:
1.静音问题: 就是开始就静音,来电时候还原回去,然后到最后再静音吧,但是存在一个问题就是虽然静音,来的时候系统声音出不来,但是来电时候不是要播放自己的音乐并还原声音么,这样一来就存在2种音乐同时播放的问题了,而且系统的声音应该优先级比较高吧,所以应该会播放系统的声音吧.

2.隐藏窗体问题:
隐藏窗体我试过了
hwndSystemPhone   =   FindWindowW(L"MSCprog",       NULL);
if   (hwndSystemPhone!=   NULL)
{
//PlaySoundW(NULL,(HMODULE)hwndSystemPhone,   SND_RESOURCE   ?   SND_ASYNC);
PostMessageW(hwndSystemPhone,WM_SHOWWINDOW,0,0);
}

可以隐藏一下,但是后来又出来了,而且再隐藏就没效果了
但是我没用上面你说的注册表进行修改,我试试看,呵呵
 
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

19
 
是改铃声的播放脚本Script,而不是改铃声。
 
 
 

回复

92

帖子

0

TA的资源

一粒金砂(初级)

20
 
1.静音问题:
我改了,是可以设置静音,但是再重新改回去的话,有时就不一定成功了,还是没声音了.自己的音乐文件声音也播不出来了
函数代码如下:
#define REG_SCRIPT L"Script"
#define REG_MUTE L"ControlPanel\\Sounds\\RingTone0"

/*
*  函数名    :fnSetRing
*  输入参数  :BOOL
*  输出参数  :None
*  返回值    :None
*  功能      :设置静音或还原
*/
void CMainControl::fnSetRing(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);
        Sleep(500);
        if(lRet != ERROR_SUCCESS)
        {
                if(lpbring != NULL)
                {
                        delete []lpbring;
                        lpbring = NULL;
                }
                return;
        }
        if(lpbring != NULL)
        {
                delete []lpbring;
                lpbring = NULL;
        }
        return;
}

2.隐藏来电窗体问题
我用你介绍的
[HKEY_LOCAL_MACHINE\Software\Microsoft\Shell\Rai\:MSCPROG]
改了下里面的数据,但是没效果,来电窗体还是出来了,即使没马上出来,隔1-2秒又出来了,
然后我用移动窗体位置的方法,把他移动到窗体的外面也没成功,不知道用什么方法才能把来电窗体隐藏呢????
::SetWindowPos(hwndSystemPhone,0,1000,1000,300,300,SWP_HIDEWINDOW);



 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/7 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表