How to update a modified Microsoft Office package

Aug 13, '08 07:30:00AM

Contributed by: hayne

The MS Office 2008 12.1.2 updater does a pre-install check to see if you have the previous versions of all of the files that it will update. So if you had previously removed some of the language-specific files (e.g. using the third-party utility Monolingual), this pre-install check may fail, as some of the updated files are language-specific (e.g. Dutch & German).

The instructions below will allow you to run the update by editing the pre-install script to bypass the check for previous versions of the files. (The alternative is to do a complete reinstall of MS Office -- to get back the language-specific files that you removed -- and then reapply the updates. That would certainly be the safer course, but I haven't seen any problems after having followed the below instructions on my Mac with OS X 10.5.4).

Here's what I did:

  1. Copy the file Office 2008 12.1.2 Update.mpkg from the mounted DMG to some other location -- e.g. to your Desktop.
  2. Use Finder's Action (gear) menu or contextual menu to Show Package Contents on the above copy of the .mpkg file. Navigate to the Contents » Resources folder, where you should see a file named package_updatable. It is probably listed as a Unix executable file.
  3. Open this file in your favourite text editor (e.g. Text Wrangler) by using the File » Open menu item in that text editor application, or by dragging the file on top of the text editor's icon in the Dock. You will see that this file is a Python script. Look for the lines in the script that look like this:
       if not os.path.exists(file_path):
           break
    Change the break to be continue:
       if not os.path.exists(file_path):
           continue
    Then save your changes.
That's it; in the Finder, double-click on the copy of the .mpkg file that you modified, and it it should work now.

[robg adds: I haven't tested this one.]

Comments (20)


Mac OS X Hints
http://hints.macworld.com/article.php?story=20080813052404365