Update 4/10/11 - Lync 2010 CU2 has been released which fixes this issue. You can download the latest updates here: http://technet.microsoft.com/en-us/lync/gg131945.
This issue came up from a customer recently while they were migrating from OCS to Lync Server 2010. The Lync 2010 client was pushed out to all of their workstations, but the Vista users were having problems when trying to exit out of Outlook. This issue was that Outlook wouldn't completely exit, so you couldn't start it again unless you went into Task Manager and killed the OUTLOOK.EXE process. After a bunch of research it turns out that this issue is caused by not having tracing turn on for the Lync 2010 client.
The workaround is to enable tracing for the client. There are a couple of ways to accomplish this, I'm using the client policy to enable it below, but whichever way works best in your environment is fine. From the Lync Server Management Shell, you'll want to issue the following command:
Set-CsClientPolicy -Identity Global -EnableTracing $true
This is assuming that all of your clients fall into the Global policy. If you've defined custom client policies, then this needs to be set on each of them.
When applying the policy the following registry keys will be set:
The key that is the most important (the one that’s causing the Outlook issue) is the UCAddin tracing. The value has to be set to "1" to generate a trace file that will be stored in %USERPROFILE%\Tracing\OCAddin.
You might have to have the client will have to sign out and back in again to get the updated policy.
Once tracing is enabled, Outlook should now successfully exit on Vista workstations.