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

Repair kills Windows shares


1 reply to this topic

baramundi

baramundi
  • Full Members
  • 1 posts

Posted 15 May 2007 - 10:39

Hi,

I have a strange windows installer problem:

My setup installes an application containing a windows services. It also uses a custom action to create some windows shares my application requires. This action is done in VBScript.

Now when the program is installed and I restart my services periodically after some time there is a eventlog entry:

Erkennung von Produkt "{D97E072D-58B6-4CE6-8999-B6232F6310F5}" und Funktion "Server" fehlgeschlagen beim Anfordern von Komponente "{5E6D2758-7FD8-4084-B51C-1C76AD12B635}".

and my shares are deleted.

As far as I understand the eventlog entry it is a windows installer auto repair. The component resolves to a COM components.

So my questions are:

1) Why does the setup get repaired? How can I find out which triggers the repair?

2) Why are the shares deleted. Since the custom action which creates the shares is done in VBScript, Windows Installer does not know about the shares created so how can it delete them? Does Windows Installer track the registry while running custom actions?

The custom action configuration is:

Synchronous (Ignored Exit Code), Deferred Execution, Install Exec Sequence: After PublishComponents, Install Exec Condition: &Server=3

MSI Type Number: 1638

3) What is best practice to create network shares? Using the lanmanserver/Shares registry keys would fit into the Windows Installer paradigma for install/uninstall but would require a reboot to come into effect.

Thank you for your help in advance.

Bernd




Glytzhkof

Glytzhkof
  • Moderators
  • 1,447 posts

Posted 15 May 2007 - 13:46

1: if the guid resolves to a COM component, then it is the COM file's registry registration data that is triggering self repair (it may have been overwritten by another application or otherwise corrupted - windows installer then triggers self repair to correct the problem).

2: This may be related to the files / folders being reinstalled / repaired and as such the share information effectively gets overwritten. Your VBScript may be conditioned with (Not Installed), try changing the condition to (Not REMOVE~="ALL"). It will then run during a fresh install and a repair install, but not for an uninstall.

3: Personally I would use VBScript to create the shares - I prefer this over direct access to registry keys because it is always safer to go through an API than to change things under the hood directly.
Regards
-Stein Åsmul