jueves, 24 de febrero de 2011

SOLVED – Windows Vista: Office 2007 installation runs every time I start Word or Excel, and Excel has an error about stdole32.tlb?

My laptop has Windows Vista Ultimate 32-bit installed as the operating system, but looking at Google, the problem affects any version of Vista. Here is how the problem manifested on my machine.

  1. I install Office 2007 on the machine. The machine does not have any previous version of Office on it.
  2. When I run Word, the installation screen comes up and takes a minute or two configuring Office. On closing Word and restarting it, the installation routine runs again. In fact, it runs every time I run Word.
  3. When I run Excel, I get a rather unhelpful dialogue box popup saying merely “stdole32.tlb”. On clicking the close button for this dialogue box, it closes and Excel and the installation routine runs to configure Office 2007. Again, this happens EVERY time I want to run Office 2007 applications Word and Excel. The other applications appear to work OK on my machine.

The problem is down to registry problems, and I want to thank Brian Peek for the solution. However, since my operating system is in Spanish, and not English, his instructions needed a little modification. Here is a complete walk-through to solve this problem that gives you the info you need if your Windows Vista is in another language.

DISCLAIMER: If you follow these instructions, I take no responsibility for any problems you may subsequently have. You are using these instructions at your own risk. Also, this has not been tested on 64-bit Vista or any other version besides Windows Vista Ultimate 32-bit. Of course, if you do decide to go ahead and try this fix, you should backup your registry and your important data.

REQUEST: If this solution works for you (or even if it doesn’t), please consider adding a comment at the end of this page so that I can see whether this fix works for the majority of people trying it. Thanks very much, I appreciate it!

The first step is to check that your computer is indeed suffering from the permissions “bug” in Vista. Click the Windows Start Button, and type regedit into the search box and hit return.

run-regedit

This will open up Windows Regedit tool. Right click on HKEY_CLASSES_ROOT, and select Permissions:

run-regedit-2

This is what you should see in the resulting dialogue box:

reg2

Permissions should be set for a variety of users.

If your dialogue box looks like the following screenshot, then you have a problem:

reg

As you see, no permissions have been assigned to HKEY_CLASSES_ROOT. This is cause of the Office 2007 installation problems, as well as potentially a lot of other problems you are having with installing products.

The very first thing you need to do is backup your registry. There is a good walkthrough of doing this here (thanks Adam).

Next, you need to download a Microsoft tool called SubInACL and install it.

If your computer is the same as mine, it should install into the following folder:

c:\program files\Windows Resource Kits\Tools

Open your text editor and paste in the following code:

subinacl /subkeyreg HKEY_CURRENT_USER /grant=administrators=f /grant=system=f /grant=restricted=r /grant=YOURUSERNAME=f /grant=restricted=r /setowner=administrators
subinacl /keyreg HKEY_CURRENT_USER /grant=administrators=f /grant=system=f /grant=restricted=r /grant=YOURUSERNAME=f /grant=restricted=r /setowner=administrators

subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=administrators=f /grant=system=f /grant=users=r /grant=everyone=r /setowner=administrators
subinacl /keyreg HKEY_LOCAL_MACHINE /grant=administrators=f /grant=system=f /grant=users=r /grant=everyone=r /setowner=administrators

subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=administrators=f /grant=system=f /grant=users=r /setowner=administrators
subinacl /keyreg HKEY_CLASSES_ROOT /grant=administrators=f /grant=system=f /grant=users=r /setowner=administrators

Save the file in the same folder as SubinACL.exe as “officefix.cmd”.

Now, edit the file by replacing the following text:

YOURUSERNAME – replace with your computer username.

You can find this by going into the control panel, and opening up User Accounts.

username

In my case, I replace YOURUSERNAME with Andy

NON-ENGLISH Vista additional instructions

Now, here is where you have to add an additional couple of steps if you are using a version of Windows Vista that is not in English. You also need to replace these:

administrators & users – needs to be replaced with the equivalent in your language.

If you are unsure what these equivalents are, you can find this information by looking at the properties of the hard drive on your computer. Open Explorer, and right click the C: drive and select properties:

finding-equivalent

In the dialogue that opens, click onto the Security tab. You should see both the administrator and the users equivalent words on that tab:

admin-users

If you do not see these users listed here, look at the properties of files or folders on your hard disk until you see these users and you have the equivalent words in your OS language.

Look at the table below to see what you need to substitute in your officefix.cmd file if your OS is in a non-English language (If you can supply this info in another language, please post a comment at the end of this page):

English Administrator Users
Spanish Administradores Usarios
French
(thanks Romu)
administrateurs utilisateurs
Dutch (thanks Bavo) Administratrors gebruikers
German (thanks Raymond) Administratoren Benutzer
Portuguese (thanks Clara) Administradores Utilizadores
Swedish (thanks Emil) administratörer användare

NOTE: Raymond who provided the German translation above, added the following piece of advice:
“If the user name contains a space, it should be written in quotes (“”) in officefix.cmd”

OK; you are now ready to run “officefix.cmd”

Open Windows Explorer and navigate to the folder where SubInACL.exe and your officefix.cmd files are located. This is probably:

c:program filesWindows Resource KitsTools

Double click the officefix.cmd file. A screen should open and you can see the progress of the operation.

You can now go and have a coffee. The process may take several minutes. When it is complete, try running Word and Excel again. This fixed my problems.

Since fixing my installation of Office 2007 (or should I say the Windows Vista Registry permissions), I have looked into other problems caused by the same registry bug. Here is a great post on Aaron Stebner’s blog showing how to reset your Windows Vista registry. His fix also addresses permissions in the program files folder and the windows directories.

I have since applied this fix over the top of the one I described above, and have had no problems with my machine since (except an annoying Adobe Updater issue, but I suppose I cant win everything).

Please feel free to leave a comment at the bottom of this page if you have found this works for you (or if you have any problems with it). If you are using a different language, please post the words you need to substitute for administrators & users to help others trying to fix this Windows Vista problem.

====================================================
Te fue de utilidad? deja tu comentario. / Usefull? Leave us your comment