2016-07-14 9 views
0

TAPI API를 사용하여 전화 통신 응용 프로그램을 개발 중입니다. TAPI API를 사용하여 응용 프로그램을 개발할 수있는 몇 가지 샘플 코드를 얻을 수는 있지만 TAPI 응용 프로그램의 주소를 구성 할 수는 없습니다. 어떤 도움이라도 대단히 감사하겠습니다.TAPI 주소 라인 구성 문제

감사합니다, Ganesan S

에게 내가

private int InitializePhoneDevices() 
    { 
     var parms = new PHONEINITIALIZEEXPARAMS(); 
     parms.dwTotalSize = parms.dwNeededSize = parms.dwUsedSize = Marshal.SizeOf(parms); 
     parms.dwOptions = NativeMethods.PHONEINITIALIZEEXOPTION_USEEVENT; 
     parms.dwCompletionKey = 0; 
     parms.hEvent = IntPtr.Zero; 

     int numDevices; uint hTapi; 

     int rc = NativeMethods.phoneInitializeEx(out hTapi, 0, null, _appName, 
       out numDevices, ref _phoneVersion, ref parms); 
     if (rc == NativeMethods.PHONEERR_OK) 
     { 
      _hTapiPhone = new HTPHONEAPP(hTapi, true); 
      _evtReceivedPhoneEvent.SafeWaitHandle = new SafeWaitHandle(parms.hEvent, false); 

      _phoneArray = new List<TapiPhone>(); 
      for (int i = 0; i < numDevices; i++) 
      { 
       _phoneArray.Add(new TapiPhone(this, i)); 
      } 
     } 
     else 
     { 
      numDevices = 0; 
     } 
     return numDevices; 
    } 

목록에있는 장치의 수는 항상 빈 오는을 시도 코드의 추가 조각, 즉, 어떤 구성 I 문제입니다 채워지려면 내 시스템에서해야합니다.

+0

당신은 u는 자신의 의견을 추가하십시오 수 있습니다, 당신은 코드 등의 감사 – Visualife

+0

내가 시도 코드의 조각을 추가, 지금까지 시도했다 우리에게 보여 주 시겠어요 – Mawy

답변

0

PBX가 전화 장치를 통해 노출되고 있습니까? 내 경험상 대부분의 TAPI 2.2 드라이버는 라인 장치를 통해 노출됩니다. 대신 lineInitializeEx를 사용해보십시오.

MSDN lineInitializeEx function