2011-11-10 3 views
0

컴퓨터에서 Toshiba CIX tapi 명령으로 전화를 걸기 위해 개발중인 C# Tapi 응용 프로그램이 있습니다. 라인 자체는 그 부분이 작동하는 것처럼 중요하지 않습니다. 응용 프로그램에서 전화를 걸 수 있습니다. 그러나 응답 및 전화 끊기가 올바르게 작동하지 않습니다. (HRESULT에서 예외 : 0x80040003 (OLE_E_ADVISENOTSUPPORTED))이 구현은 고려하지 않습니다Toshiba CX로 TAPI를 사용하려고하는 응용 프로그램

가 조언 : 나는 때문에 차단하려고 할 때이 오류가 얻을

을 내가 대답 할 때 내가 얻을 :

Unable to cast COM object of type 'System.__ComObject' to interface type 'TAPI3Lib.ITBasicCallControl'. This operation failed because the QueryInterface call on the COM component for the interface with IID '{B1EFC389-9355-11D0-835C-00AA003CCABD}' failed due to the following error: No such interface supported (Exception from HRESULT: 0x80004002 (E_NOINTERFACE)).

내 응용 프로그램을 기반으로합니다 : http://www.codeproject.com/KB/IP/devangpro.aspx 적어도 제대로 실행하려면 codeproject에 대한 응용 프로그램을 얻으려면 크로스 스레드 문제 때문에 목록 상자에 항목을 추가하기 위해 대리인을 만들어야했습니다. 여기

은 해제입니다 :

IEnumCall ec = ia[line].EnumerateCalls(); 
     uint arg = 0; 
     ITCallInfo ici; 
     try 
     { 
      ec.Next(1,out ici,ref arg); 
      ITBasicCallControl bc=(ITBasicCallControl)ici; 
      bc.Disconnect(DISCONNECT_CODE.DC_NORMAL); 
      ici.ReleaseUserUserInfo(); 
     } 
     catch(Exception exp) 
     { 
      MessageBox.Show("No call to disconnect!","TAPI3"); 
     } 

그리고 여기에 대한 대답입니다 :

 IEnumCall ec = ia[line].EnumerateCalls(); 
     uint arg=0; 
     ITCallInfo ici; 
     try 
     { 
      ec.Next(1,out ici,ref arg); 
      ITBasicCallControl bc=(TAPI3Lib.ITBasicCallControl)ici; 
      if(!reject) 
      { 
       bc.Answer(); 
      } 
      else 
      { 
       bc.Disconnect(DISCONNECT_CODE.DC_REJECTED); 
       ici.ReleaseUserUserInfo(); 
      } 
     } 
     catch(Exception exp) 
     { 
      MessageBox.Show("There may not be any calls to answer!  \n\n"+exp.ToString(),"TAPI3"); 
     } 

답변

1

나는 단지 내 응용 프로그램에서 발신자 ID를보고 싶어하기 때문에 datamodem 오디오에서 tapimediatype을 변경하고 작업 문제의 원인은 모뎀이 오디오를 지원하지 않기 때문에 tapimediatype을 다른 유형으로 변경해야 할 수도 있습니다.

0

같은 issu 전자 프로젝트에서 나는 많은 검색을했지만 아무 것도 발견하지 못했고 문제는 내 코드에서 발생했습니다.이 오류는 tapi 선 (장치)을 선택하지 않고도 모든 작업을 수행 할 때만 발생합니다.

아무 작업을 수행하기 위해 TAPI 행을 선택하지 않은 것으로 보입니다.