lync 运行时无法启动应用程序?

Posted

技术标签:

【中文标题】lync 运行时无法启动应用程序?【英文标题】:unable to launch application when lync is running? 【发布时间】:2015-08-28 05:54:52 【问题描述】:

我正在处理我的delphi 应用程序的一些奇怪问题。 场景如下:

如果microsoft Lync 正在我的机器上运行,并且如果我想启动我的应用程序,它不会显示,但该进程已为我的应用程序启动。

当我关闭lync 时,我的应用程序立即可见。 以下是您可能需要的一些要点:

    我的应用程序没有与Microsoft Lync 的任何链接。 当我关闭 lync 时,Application 进程正在运行 Form.Show() 是我的代码调用的最后一条语句。 此问题并非在每台机器上都存在。

我不确定为什么会这样。

谁能帮我解决这个问题?

任何帮助或建议都会对我有用。 提前致谢。

【问题讨论】:

您的程序有什么特别之处?普通 VCL 表单应用程序也会发生同样的情况吗? @DavidHeffernan 我的程序只是一个简单的程序,没有任何特别之处。只是一个主窗体和一个使用 ShowModal() 调用的子窗体。不,不是每个应用都会发生这种情况,只有我的应用才会发生这种情况 普通 VCL 表单应用程序也会发生同样的情况吗? 对不起,我没听懂vanilla VCL forms app的意思? 我有同样的问题,但使用的是 Lync。当我尝试启动 Lync 时,它说 Microsoft Outlook 的另一个窗口已经创建并且它中止了 Lync。 【参考方案1】:

最后, 经过长时间检查代码后,我才知道这个问题是由于在代码中的某处将桌面设置为父窗口。 请参阅此链接以获取SetParent()。

当我们与微软讨论这个问题时,我知道当我们调用 SetParent(Handle, 0) 时,Lync 的某些应用程序出现了问题,这将进入一个漫长的等待状态。

解决方案: 我所做的是因为SetParentfunction 调用在我的代码中很重要,所以我将表单的SetParent 属性分配给我的应用程序句柄,这样就解决了我的问题。

完成上述步骤是因为在 spy++ 中我发现每个 delphi 应用程序作为 2 个实例 1 用于 TApplication,另一个用于同一应用程序的 MainFrom i.e. TForm

【讨论】:

以上是关于lync 运行时无法启动应用程序?的主要内容,如果未能解决你的问题,请参考以下文章

我可以使用 Lync 2010 SDK 启动 Lync 2010 客户端应用程序吗

Lync 无法在 OSX Yosemite 上启动(不断重新启动)

无论安装的 Lync 客户端版本如何,都从 C# WPF 桌面应用程序启动 Lync 对话

Lync 客户端 SDK 报告错误的状态代码

当 Lync 应用程序运行 UI 抑制时,GetAutomation() 不起作用

无法安装 Microsoft Lync 2013 SDK