Exetools  

Go Back   Exetools > General > General Discussion

Notices

Reply
 
Thread Tools Display Modes
  #1  
Old 01-21-2005, 09:53
gabri3l's Avatar
gabri3l gabri3l is offline
Parity Error 0x0FF2131D
 
Join Date: Aug 2003
Location: Eastern Shore
Posts: 118
Rept. Given: 0
Rept. Rcvd 5 Times in 1 Post
Thanks Given: 8
Thanks Rcvd at 21 Times in 10 Posts
gabri3l Reputation: 5
I believe your problem is related to what is called a KEYPATH in the MSI. Each component in an MSI requires a Keypath. In your case the shortcut seems to be set as a keyfile. The Windows Installer Service is trying to verify the availability of the keypath element and if it cannot find it it will Repair itself. This will hopefully fix your problem.

First check your event log. In XP it's Start-> Performance and Maintenance -> Administrative Tools-> Event Viewer And for NT Start -> Settings -> Control Panel -> Administrative Tools -> Event Viewer.

When you have your event viewer open select Application Log and find the application that is giving you trouble. An easier way can be to right click on application log and clear it. Then run the program and let it give you the repair error. Then check the log. doubleclick on the logged event and you should see something to the following
Event ID: 1004
Description: Detection of product "{4ED0C75A-8BC5-4520-B9C7-76968FD5677F}", feature "Test", component "{A7B09747-E527-4E1B-AE51-323CD636210F}" failed. The resource "C:\Progam Files\InstallSite\test.exe" does not exist.

The {A7B09747-E527-4E1B-AE51-323CD636210F} listed after component is called the Component Id. Copy that down. You can now close event viewer.

Okay, now you need to find Orca. It is included with the Windows Installer SDK. Or google for Orca.msi and look a few pages in to find a link. When you have Orca use it to open up your MSI install file.
On the left hand side of the program you see a list of tables. Scroll down and select "Component". You'll now see, in the right side, a table of components and their information including compenent id's. Find the component id's that were giving you trouble and select the KEYPATH cell. Delete the information in the keypath cell for all the component ids that were giving you trouble. Save your MSI. Now uninstall and reinstall the software using the new MSI. You should not have anymore problems.

I hope that fixed your problem. If not: Sorry for such a long post.

Last edited by gabri3l; 01-21-2005 at 10:50.
Reply With Quote
  #2  
Old 01-21-2005, 19:13
Kerlingen
 
Posts: n/a
@gabri3l:

I did as you suggested. The Event Log contained the warning messages telling me that "C:\Documents and Settings\All Users\Start Menu\..." was not available. Then I copied the Component Id, installed ORCA.MSI from the PlatformSDK, opened the installation MSI and found the Component Id in the component section. But the KeyPath is an empty value. I can't delete anything from it since there is nothing in it. I guess this is since the shortcuts are not already packed into the MSI, but only created at installation time.

Then I tried to remove the whole row. The MSI gave me an internal error when I started it. I searched for other occurences of the Component Id, but I didn't find it anywhere else.

Then I searched for the names of the Start Menu entries and found them in the Shortcuts category. I deleted them all and saved the MSI file and installed the software again. This time I had no shortcuts in my Start Menu. I created a shortcut on my own and started the software. This time I was in an endless loop of "repairing" the "damaged" software. Which I only could stop by "burning" them with LordPE, since my Task manager didn't allow me to terminate the processes.

Then I tried to find some occurences of the files the shortcuts pointed to, but I didn't find anything which I would classify as "this is it" (I don't know much about MSI).

How does the auto-repair feature of MSI file work anyway? If I execute "TEST.EXE", does Windows check if it is a MSI installed application and launch the installer to check it or must "TEST.EXE" call some MSI APIs itself to check if it needs to be repaired?

I bet disabling this would decrease startup time of MSI installed software.
Reply With Quote
  #3  
Old 01-21-2005, 20:16
ee45678 ee45678 is offline
Friend
 
Join Date: Jan 2005
Posts: 27
Rept. Given: 0
Rept. Rcvd 0 Times in 0 Posts
Thanks Given: 0
Thanks Rcvd at 0 Times in 0 Posts
ee45678 Reputation: 0
Try this:

http://desktopengineertraining.com/msirestrictrun

They also have a few other tools for use with MSI files that you may find useful.
Reply With Quote
  #4  
Old 01-22-2005, 03:38
gabri3l's Avatar
gabri3l gabri3l is offline
Parity Error 0x0FF2131D
 
Join Date: Aug 2003
Location: Eastern Shore
Posts: 118
Rept. Given: 0
Rept. Rcvd 5 Times in 1 Post
Thanks Given: 8
Thanks Rcvd at 21 Times in 10 Posts
gabri3l Reputation: 5
It's hard to diagnose the problem without the software in front of me, but you can try opening the MSI in orca and selecting the PROPERTY cell on the left hand side. Then in the cells to the right add a new row. In the new row under property type DISABLEADVTSHORTCUTS and set the value cell to 1. Then install the software.

The problem is that when a program using MSI installs it registers itself with Windows Installer Service. The service then controls certain program properties. You cannot stop a certain program from using the Repair option. However, you can disable the service all together by opening up your registry and going to HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Installer (you may have to create this folder) and Create a new DWORD value, or modify the existing value, called "DisableMSI" and set it according to 2 = disabled. Exit your registry, you may need to restart. This will almost definately fix your repairing issues. The only problem you will face is that this disables the MSI service for all applications.

Last edited by gabri3l; 01-22-2005 at 08:34.
Reply With Quote
  #5  
Old 01-23-2005, 01:50
Kerlingen
 
Posts: n/a
@gabri3l:

Thank you for all your work you invested in my problem. Finally the DISABLEADVTSHORTCUTS trick worked and solved my problem. Now I can open my start menu again without falling off my chair. :-)

@ee45678:

Thank you for the link, but I didn't find anything which would help me in my current situation there. But perhaps I will need it later again.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Windows Update Disable and Enable mdj General Discussion 0 03-05-2018 23:45


All times are GMT +8. The time now is 02:44.


Always Your Best Friend: Aaron, JMI, ahmadmansoor, ZeNiX, chessgod101
( Since 1998 )