<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Lync on Remko's Blog</title><link>https://remkoweijnen.nl/blog/categories/lync/</link><description>Recent content in Lync on Remko's Blog</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Mon, 12 Mar 2012 23:25:51 +0000</lastBuildDate><atom:link href="https://remkoweijnen.nl/blog/categories/lync/index.xml" rel="self" type="application/rss+xml"/><item><title>Lync Client Password Recovery</title><link>https://remkoweijnen.nl/blog/2012/03/12/lync-client-password-recovery/</link><pubDate>Mon, 12 Mar 2012 23:25:51 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2012/03/12/lync-client-password-recovery/</guid><description>&lt;p&gt;I wrote a small tool that dumps all stored password for the Microsoft Lync Client that I'd like to share here.&lt;/p&gt; &lt;p&gt;It's a commandline tool that takes no arguments:&lt;/p&gt; &lt;p&gt;&lt;a href="https://remkoweijnen.nl/blog/wp-content/uploads/2012/03/SNAGHTML173c9066.webp" class="glightbox" data-type="image" data-gallery="post-2529"&gt;&lt;img loading="lazy" decoding="async" style="display: inline" title="Screenshot" alt="Lync Password Dumper" src="https://remkoweijnen.nl/blog/wp-content/uploads/2012/03/SNAGHTML173c9066_thumb.webp" width="415" height="210" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Have fun with it!&lt;/p&gt;</description></item><item><title>Running multiple instances of Lync (howto)</title><link>https://remkoweijnen.nl/blog/2012/03/07/running-multiple-instances-of-lync-howto/</link><pubDate>Wed, 07 Mar 2012 22:55:37 +0000</pubDate><guid>https://remkoweijnen.nl/blog/2012/03/07/running-multiple-instances-of-lync-howto/</guid><description>&lt;p&gt;&lt;a href="https://remkoweijnen.nl/blog/wp-content/uploads/2012/03/image4.webp" class="glightbox" data-type="image" data-gallery="post-2513"&gt;&lt;img loading="lazy" decoding="async" style="margin: 0px 0px 0px 5px; display: inline; float: right" title="image" alt="image" align="right" src="https://remkoweijnen.nl/blog/wp-content/uploads/2012/03/image_thumb4.webp" width="58" height="59" /&gt;&lt;/a&gt;Yesterday I showed a &lt;a href="https://remkoweijnen.nl/blog/2012/03/06/run-multiple-instances-of-lync-2010poc/" target="_blank"&gt;video&lt;/a&gt; demonstrating it's possible to run multiple instances of the Microsoft Lync 2010 client simultaneously.&lt;/p&gt; &lt;p&gt;A little warning before we go on: the Lync Client was not designed to run with multiple instances. Or better said: it was designed specifically to prevent this, let's see how it does this:&lt;/p&gt; &lt;p&gt;On startup Lync calls an internal function called COcAppNoUI::InitializeMainInstance. In this function it creates a &lt;a href="http://msdn.microsoft.com/en-us/library/windows/desktop/ms684266(v=vs.85).aspx" target="_blank"&gt;Mutex&lt;/a&gt; named "Office Communicator_" in the Global &lt;a href="https://remkoweijnen.nl/blog/2009/01/27/accessing-kernel-objects-in-other-sessions/" target="_blank"&gt;namespace&lt;/a&gt;. It also creates an &lt;a href="http://msdn.microsoft.com/en-us/library/windows/desktop/ms682655(v=vs.85).aspx" target="_blank"&gt;Event&lt;/a&gt; in the Global namespace called "COMMUNICATOR-".&lt;/p&gt; &lt;p&gt;When a second instance of Lync is launched it checks if the Global Mutex exists and if it does it fires the Global Event. The Main instance has a thread that waits for this event using the &lt;a href="http://msdn.microsoft.com/en-us/library/windows/desktop/ms687025(v=vs.85).aspx" target="_blank"&gt;WaitForMultipleObjects&lt;/a&gt; API.&lt;/p&gt;</description></item></channel></rss>