Using SWV's Isolation Rules to get around Office 2003 & 2007 MSI Repairs
One of the issues with running two versions of Microsoft Office at the same time, with one in the base and one in the layer, is the MSI repair that gets launched when you switch between versions. This is happening because Office is trying to change the file associations for you so the version that was just launched has ownership.
With SWV 6.1 we introduced layer isolation, which can be defined as what can or cannot see the layer and what the layer can see, well this works for many situations but sometimes you need something more granular which will let you specify specific things that are isolated, Jeremy discussed this in his article on using SWV 6.1 to virtualize different versions of Java, which is what we need for Office.
To get around the MSI repair all you need to do is create a new Multi-Size registry value named IsolationRules under the Read Only Sub-Layer (so this doesn't get deleted when you reset the layer) of the office layer and then place the following data inside it (remember to replace myGUID with your layer's GUID):
*\winword.exe<tab>BASE<tab>0x0002<tab>\REGISTRY\*<tab>*<tab>MyGUID
This rule states that any process of Winword.exe running in the base cannot see any of the registry keys for the layer. Alternately you can reverse the rule to:
*\winword.exe<tab>myGUID<tab>0x0002<tab>\REGISTRY\*<tab>*<tab>BASE
Now one thing to be aware of is the <tab> is a tab character which is not something you can type in Regedit so you should probably create the text in notepad and then copy and paste it.
The Endpoint Virtualization Community Blog is the perfect place to share short, timely insights including product tips, news and other information relevant to the Endpoint Virtualization community. Any authenticated Connect member can contribute to this blog.
Comments
Great info......
I generally try to keep all Office products in layers, but this will be extremely helpful if we need to leave an Office app in the base. Thanks Jordan!!!
hi
i can't help in that case............
thanks
Question
Does the above approach only work for SVS 6.1. I have added the key above but I still get the MSI Repairs. I'm running SVS 2.1
yes it's SWV 6.1 only.
yes it's SWV 6.1 only.
If a forum post solves your problem please flag is as the solution
Solution for SVS 2.1
A simpler solution for this point without (or with swv 6.1) is following the KB microsoft
http://support.microsoft.com/?scid=kb%3Ben-us%3B92...
creating/adding the reg key NoReReg=1
HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Word\Options
Isolation feature is still a great way to improve isolation between application.
It'll solve a lot of issue when KB aren't provided.
Hey thanks for that KB
Hey thanks for that KB article Artex. I will point out, however, that the regkey you mentioned will only work for Office 2007 and maybe only Word 2007 (it's the only office app that's mentioned in the KB article) while isolation would work with any version of Office as well as any Office Application.
If a forum post solves your problem please flag is as the solution
A quick question - Where do I
A quick question - Where do I create the following registry key under? HKLM\Software hive?
*\winword.exe<tab>BASE<tab>0x0002<tab>\REGISTRY\*<tab>*<tab>MyGUID
Thank you so much.
HKLM\SYSTEM\CurrentControlSet
HKLM\SYSTEM\CurrentControlSet\services\FSLX\Parameters\FSL\# where # is the magic number for your layer which is easiest to find by going to view->details in SWVadmin and looking for the number after RO=.
If a forum post solves your problem please flag is as the solution
Same issue with MS Office XP and 2010
I have virtualized MS Office XP to run on a Windows 7 workstation with Office 2010 installed on the workstation. I have added this registry key to RO layer of the package. I am still getting the msiexec repair running when I launch MS Office 2010. I have added a screen shot of the entry I made to the RO registry.
Don't place the isolation
Don't place the isolation rule inside the layer, it needs to be in the base.
If a forum post solves your problem please flag is as the solution
Same issue with Office 2003 and Office 2010 (virtual)
I put the
*\winword.exe<tab>BASE<tab>0x0002<tab>\REGISTRY\*<tab>*<tab>MyGUID value into the IsolationRules key in the base (along with entries for Excel and Powerpoint), then pushed it to an XP machine with Office 03 in the base and a virtual Office 10. SWV Admin (6.3.1.53) was used to create the .xpf file.
I'm still seeing the MSI repair being run when the virtual layer is active. If I use the alternate key,
*\winword.exe<tab>myGUID<tab>0x0002<tab>\REGISTRY\*<tab>*<tab>BASE, , , I get an error that states that the OS is not presently configured to run this application.
I'd love to have both versions of Office available side by side for a group of end-users to be able to preview Office 2010 before we upgrade them for real.
Please let me know what I'm doing wrong here!
Thanks in advance.
Deploy IsolationRules
Looks nice, but how can i deploy the registry value on all machines, when the Path to the layer is not the same on all clients?
Thanks
There is no need to deploy
There is no need to deploy this separately.
IsolationRules are part of the layer when you export it and SWV works out the magic number automatically on layer import
Would you like to reply?
Login or Register to post your comment.