【问题标题】:CONNECTED event not firing in TAPI 3.xTAPI 3.x 中未触发 CONNECTED 事件
【发布时间】:2011-04-11 23:44:47
【问题描述】:

我正在开发一个 TAPI 应用程序。在谷歌搜索时,我发现了一个不错的帖子http://www.codeproject.com/KB/IP/devangpro.aspx。但问题是,我在拨打电话时没有触发所有事件。我能够获得 INPROGRESS 和 DISCONNECTD 但没有 CONNECTED 事件被触发(即使在文章提供的屏幕截图中,也只有“拨号”和“断开连接”值存在,所以我假设即使是作者也有同样的问题)。 在我的情况下,整个程序逻辑基于 CONNECTED 和 DISCONNECTED 事件。 请帮我解决问题。

另外,我正在使用 CISCO ATA 盒子来获取拨号音。我尝试使用 FAX/DATA 以及 FAX/DATA/VOICE 调制解调器。

【问题讨论】:

    标签: tapi


    【解决方案1】:

    据我从代码示例中可以看出,它通过 VS.Net 自动创建一个互操作包装器来使用TAPI3.dll。但是 Microsoft 不支持使用托管代码中的 TAPI3。见this KB article

    由于 TAPI 3.x 组件对象模型 (COM) 接口的复杂性,由 Microsoft Visual Studio .NET 创建的托管包装器不起作用。因此,您不能从托管代码调用 TAPI 功能。

    Microsoft 目前没有发布 TAPI 互操作组件的计划。

    您必须在 TAPI 3.x 周围使用 包装器 才能在托管代码中使用它。为此,您可以使用 JulMar's ITAPI3 wrapper

    【讨论】:

    • 我尝试了 JulMar 的 ITAPI3 包装库提供的示例。但似乎 CONNNECTED 状态设置,没有 CONNECTED 我正在进展。我会再试一次。
    • 这取决于您的 TAPI 驱动程序通知您的行状态。并非所有驱动程序都发送所有状态事件。您可以向驱动程序查询它支持哪些状态,但目前我无法告诉您是哪个函数在执行此操作。
    猜你喜欢
    • 1970-01-01
    • 2014-04-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多