Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Event ID 1001


3 replies to this topic

justdan

justdan
  • Members
  • 2 posts

Posted 31 October 2002 - 15:37

The Scenario:
1. The user installs a software product (via MSI v1)
2. The user upgraded to Windows Installer v2
3. The user installs a newer version of the same software product (via MSI v2)
4. The user receives pop-up Event Log notifications each time they launch the software product.

The Problem:
The Windows event log shows 'Event ID 1001' with a Description as follows:

Code Sample

'Detection of product '{2B776347-CA92-4828-942D-D9F7D0FC9681},  feature 'MyFeature' failed during request for component '{39BE49C8-C599-41a1-9481-009A76B5518F}'.



The Research (so far):
After researching this further, I discovered there is a component installed with no associated product installed! The association to the old product GUID exists indicating that the product was uninstalled.

Code Sample

Component={39BE49C8-C599-41a1-9481-009A76B5518F} (Path=C:\Program Files\Common Files\TestApp\Shared.dll)
  The component is installed locally.
    Product[0]={2B776347-CA92-4828-942D-D9F7D0FC9681}
       The product is unadvertised or uninstalled.



There are two components that are now installed:
1. Component A is from the old MSI.  
2. Component B is from the new MSI (new GUID).
3. Both Components reference the same file that is installed to the same location.
4. Component A was not installed as permanent and used an install attribute of '8' in the Components
   Table. (strange the component remains installed after the product was uninstalled successfully.)  

The Delimma:
I need to figure out how to remove the Component A entry in the Installed Products database without affecting the installed file that is references by Component B.  

The Question:
Does anyone know any unpublished APIs I can use or registry keys I can remove to accomplish this?  

:0



hambone

hambone
  • Members
  • 206 posts

Posted 31 October 2002 - 16:53

i am wondering, if this is indeed an orphaned component from a, now, non-existent product, could you not simply check the component guid in the msi registry database and remove it from there ( or at least remove the current product association, if more then one product associates itself with the component ) ?

in the msi registry database, [HKLMSOFTWARE\Microsoft\Windows\CurrentVersion\Installer], there is a Components key identifying all of the currently installed MSI components on the system.  ie
[...\Installer\Components\A1F89A687A195D11BB8A00060B1A4861]
beneath this is an entry identifying the products ( using the ms translated product guid ) that use this component.  ie
"71F89A687A195D11BB8A00060B1A4861"="C:\\Program Files\\TestMSI-1\\silktest.pdf"

my thinking is that you should be able to remove this key IF the only product associated with it is your.  OTHERWISE remove the value from the component usuage list...

hope this helps....

justdan

justdan
  • Members
  • 2 posts

Posted 31 October 2002 - 17:42

Yes, the Component is orphaned.  

The following fixed the problem:
1. Removed the following reg keys for Components under
'HKLM\Software\Microsoft\Windows\CurrentVersion\Installer':
- Products\{old-product-guid}
- UserData\S-1-5-18\Components\(ComponentA-bitflipped-guid)
- UserData\S-1-5-18\Products\{old-product-guid}

:D

hambone

hambone
  • Members
  • 206 posts

Posted 01 November 2002 - 13:49

glad to hear that you managed to fix the problem!

depending on who installed the app., or how,  you might find the components and product keys for some apps. under different 'head' keys.  in this case the S-1-5-18 is a key entry for the S.I.D. of the Local NT Authority...

i wish there was a tool to pull all of this together!