COM是一个呼叫中心的SDK提供的DLL,可以用C#直接使用。 目前是这样计划的:用C#写一“实现层”来包裹SDK提供的API,当然,其中必须有来电事件需要传上来给这个实现层,而实现层上面还有一个抽象层,抽象层上才是最终的html或asp.net的展示层。 现在已经用C#直接调用SDK写OCX控件实现了基本的接听,拨打功能。不知道按上述的分层来作,会不会作不成OCX控件。先不管这个问题,首先遇到的是: 如何让COM传事件给实现层,实现层传事件给抽象层,抽象层传事件给表面层? 谢谢。分层有好处,可这样作带来的麻烦还真是头疼啊
-----
AD
http://lilyhealth.blogspot.com

解决方案 »

  1.   

    我用过语音卡开发过一个传真 具体是这样的 
    主窗体加载时候 开启个进程
    CallBack myCallBack = new CallBack(frmMain.gmainfrm .SHWaitForEvent);
                myFax = new FaxEvent(myCallBack);
                myThread = new Thread(new System.Threading.ThreadStart(myFax.ExcuteProc));
    CallBack是个委托 frmMain.gmainfrm .SHWaitForEvent是处理事件的窗体
    类faxevent里面的死循环方法
    public void ExcuteProc()
            {
                myEvent = new MESSAGE_INFO();
                while (cardRun == true)
                {
                   
                    if (this.myCallBack != null)
                    {
                         int a = SHFaxAPI.GetSsmWaitForEvent((uint)0xffffffff, ref myEvent); //SsmWaitForEvent((uint)0xffffffff, ref myEvent);
                        if (a == 0)
                        {
                            
                            myCallBack(myEvent);
                        }
                    }
                }        }
    这个是个死循环方法 有方法 就调用委托 执行主窗体里面处理事件的方法 
    不知道对你有帮助没有