Using Lync 2010 applications with Lync 2013 (and Lync 2013 applications with Lync 2010)
So, the Lync 2013 Preview is now out and available.
If you have installed the Lync 2013 Beta client, then you may notice two things:
- Any attempt to use LyncClient.GetClient() fails.
- Any attempt to use LyncClient.GetClient() causes the Lync 2013 Beta client to gain the focus.
For any background applications which poll the client regularly, this manifests itself as an annoying focus-grab every so often (along with the application not working).
When attempting to call LyncClient.GetClient() compiled using the Lync 2010 SDK against a Lync 2013 Beta client:
- The client immediately gains focus.
- After a delay of around 30 seconds, the following exception is raised:
Generic COM Exception. Code is 0x80080005. at Microsoft.Lync.Model.LyncClient.EnsureOI() at Microsoft.Lync.Model.LyncClient.GetClient() at LyncClientReproConsole.Program.Main(String args)
When attempting to call LyncClient.GetClient() compiled using the Lync 2013 Beta SDK against a Lync 2010 client:
The call immediately fails with:
Microsoft.Lync.Model.ClientNotFoundException: The host process is not running at Microsoft.Lync.Model.LyncClient.EnsureOI() at Microsoft.Lync.Model.LyncClient.GetClient() at ConsoleApplication1.Program.Main(String args)
We reached out to Microsoft about this, as it’s potentially a big deal, having such a separation between the two versions:
They assured us that apps compiled using the 2010 SDK should “just work” against the 2013 client.
However, anything compiled using Lync 2013 Beta SDK will not work with the Lync 2010 SDK.
The problem from above (the Generic COM Exception) is caused by having both the 2010 and the 2013 client installed on your machine. This is probably a fairly common setup for most people trying the Beta client, as the installation of the 2013 client doesn’t un-install the 2010 one. I imagine this won’t be the behavouir for the final release, as it doesn’t make a lot of sense to have both clients installed, if both are fully released.
If you uninstall the 2010 client before installing the 2013 one, you shouldn’t run into these problems.