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

Komponenten - Option "Permanent"


3 replies to this topic

herrbecht

herrbecht
  • Full Members
  • 59 posts

Posted 25 May 2005 - 15:09

Hi

ich habe eine Frage und ein Problem wink.gif :
Erstmal die Frage:

Wenn ich bei einer Komponente die Option "Permanent" auf "Ja" setze, ist es ja klar das die Dateien der Komponente bei der Deinstallation nicht gelöscht werden... Aber: Kann man diese Dateien auch problemlos bei einem Upgrade oder durch ein neues Paket mit neueren Versionen aktualisieren, oder gibts da irgendwelche Probleme. Und "von Hand" kann man diese Dateien doch auch immer löschen.. oder?

Jetzt zu meinem Problem:

In meinem Projekt gibt es eine Komponente, die nur ein Datei enthält (dynamisch eingebunden). Diese Datei soll in das System-Vereichnis installiert werden. Ich würde gerne bei dieser Komponente die Option "Permanent" auf "Ja" setzen.
Wenn ich das mache, fügt mir InstallShield aber einige CustomActions (ISSelfRegisterFinalize, ISSelfregisterCosting,ISSelfRegisterFiles,ISUnSelfRegisterFiles), einen Eintrag in der binary-Tabelle (ISSelfReg.dll) und natürlich neue Einträge in die InstallExecuteSequence-Tabelle ein. Meines Wissens dienen diese Custom Actions dazu Dateien zu registrieren. Das will ich aber nicht. Die Dateien sollen einfach kopiert werden! Ich verstehe auch nicht warum gerade das Ändern der "Permanent"-Option zu sowas führt. Wie kann ich verhindern, daß IS wieder mal erfolglos versucht mitzudenken und eigenmächtig irgendwelche unerwüschten Änderungen an meinem Projekt vornimmt. Diese IS-Automatisierungsaktionen treiben mich noch in den Wahnsinn... blink.gif

vielen Dank schonmal...

Edited by herrbecht, 25 May 2005 - 15:11.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 27 May 2005 - 10:47

Diese Verhalten kann ich mir auch nicht erklären, ausser die Datei ist selbst-registrierend.
Welche InstallShield Version und Sprache verwendest du?
Kannst du bitte mal im Direct Editor in der Tabelle Component die betreffende Komponente such und den Wert des Feldes Attributes hier posten, und zwar bevor und nachdem du das Permantnet Flag gesetzt hast?

herrbecht

herrbecht
  • Full Members
  • 59 posts

Posted 27 May 2005 - 17:40

Vielen Dank für die Antwort!

Ich benutze die deutsche Ausgabe von InstallShield Professional X + ServicePack 1. Mein Projekt ist ein Basic-MSI-Projekt. Die Komponente beeinhaltet nur eine .dll-Datei (dynamisch eingebunden) die in das Windows-Systemverzeichnis kopiert werden soll; die Komponente hat keine Key-datei.
Ehrlich gesagt weiß ich nicht ob die Datei selbstregistrierend ist (wie kann man das feststellen?) - bisher wird sie auch nur einfach kopiert und das wars.

Habe jetzt mal vor und nach dem setzen der "permanent"-Option den Attribute-Eintrag der Komponente beobachtet: Vorher 8, danach 24. Wenn ich die OPtion "Gemeinsam benutzt" abwähle (Attribute von 8 auf 0) werden auch die benutzerdefinierten Aktionen und die damit verbundenen Einträge eingefügt. Ich bin ratlos...




Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 28 May 2005 - 09:39

Seltsam. Welche Selbstregistriereungsmethode hast du in den InstallShield-Optionen (also nicht bei den Komponenteneinstellungen sondern unter Extras > Optionen) gewählt? Wird die DLL in die entsprechenden Tabellen eingetragen wenn du das Permanent-Flag setzt?

Gibt es einen bestimmten Grund dafür, dass du die DLL nicht als Key-Datei ausgewählt hast?