2016-10-28 81 views
0

我尝试学习和理解TAPI,并且我尝试了很多例子,他们都获得我的TAPI线路,我可以拨出,但是当我有一个来电时没有事件被解雇,所以我开始思考TAPI驱动程序无法正常/防火墙阻止/完全不同的内容。TAPI没有传入的“信号”?如何检查TAPI驱动程序?

我试过的最后一段代码是http://pastebin.com/T3ZHkLi0,我到了MsgBox("We are here") end,然后退出。在此之前,它引发了我拥有的唯一TAPI产品线。

有什么办法来检查为什么没有传入的事件被触发?

规格

  • Auerswald TAPI司机:Specs
  • 也许我有一个estos TAPI驱动程序的运行,我怎么能检查?
  • ProCall客户端计算机上(可能干扰?)
  • Win10 64位

任何暗示的高度赞赏

+0

您已经标记了C#和VB6,但在VB.Net代码提供完整的解决方案,哪些是什么呢?提问时请多加小心。另外请不要粘贴链接代码,嵌入代码在这里,而pastebin链接可能会很快死亡。 – DavidG

+0

pastebin被设置为“无限制”,我认为如果有一层代码很可能不是我的问题的原因,这将会适得其反。 – PrimuS

+0

从[常见问题](http://pastebin.com/faq#18):*此刻我们不删除没有过期日期的粘贴。但是在将来,我们可能会自动删除超过6个月内没有被任何人查看过的贴图。* – DavidG

回答

0

我建议你不要使用TAPI COM解决方案,并使用Julmar的.Net 32 bit和64位兼容解决方案http://atapi.codeplex.com/。它是TAPI.dll的包装器,易于实现。 你可以简单地转换此C#代码到VB

TapiManager tapiManager = new TapiManager("TapiCallMonitor.net"); 
if (tapiManager.Initialize() == false) 
     { 
      MessageBox.Show("No Tapi devices found."); 
      this.Close(); 
      return; 
     } 
foreach (TapiLine line in tapiManager.Lines) 
     { 
      try 
      { 
       line.NewCall += OnNewCall; 
       line.CallStateChanged += OnCallStateChanged; 
       line.CallInfoChanged += OnCallInfoChanged; 
       line.Monitor(); 
      } 
      catch (TapiException ex) 
      { 
       LogError(ex.Message); 
      } 
     } 

您可以在这里找到http://atapi.codeplex.com/SourceControl/latest#Atapi/trunk/source/test/TcMon/TapiMonitorForm.cs