我有一个在 32 位操作系统(XP、Vista、Win7)上工作的 TAPI 应用程序(Delphi 2007)。TAPI 服务器是 32 位 Windows 2003 SP2。
当 TAPI APP 在 64 位操作系统上运行时,我可以连接到线路,但我无法在我的应用程序上获取 TAPI 消息。
我可以看到消息已通过 Tracing tapisrv 到达机器上,但事件句柄(由 lineInitializeEx 返回)的 WaitForSingleObjectEx 从未发出信号(总是返回 WAIT_TIMEOUT)。
我也尝试过 C++ 代码和 64 位编译器,但 64 位应用程序具有相同的行为(除了甚至没有在 32 位操作系统上启动 :-))。
有什么想法可以接收到我的应用程序的 TAPI 消息吗???
编辑:嗯,似乎只有关于来电的消息被切断了。如果(在应用程序运行时)我执行“tcmsetup /c /d”(=禁用 TAPI)然后我会收到 LINE_CLOSE 和 LINE_REMOVE 消息。然后,如果我执行“tcmsetup /c server_name”,我会收到 LINE_CREATE 消息。我可以 lineOpen 提供的新行但仍然无法获取 LINE_APPNEWCALL、LINE_CALLSTATE 等