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

Files kopieren ohne "Selbstheilung"


8 replies to this topic

vbmsi

vbmsi
  • Members
  • 3 posts

Posted 26 October 2006 - 08:15

Hallo
Nach einigen Versuchen nur mit dem MSI Installer Files, bei der Installation zu kopieren und dann per Programm zu löschen, kommt immer wieder die Selbstheilung von Windows.

Wie kann man beim Installer Paket einige Files (*.txt, *.exe) integieren, die auch löschbar sind????


Gruß
Andre

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 26 October 2006 - 09:33

Wenn die Dateien nicht als Schlüsseldatei einer Komponente markiert sind werden sie beim Programmstart nicht überprüft.
Eine weitere Möglichkeit wäre, die betreffende Komponente mit leerer ComponentId anzulegen. Dann wird sie allerdings auch nicht deinstalliert.

ali

ali
  • Full Members
  • 1,008 posts

Posted 26 October 2006 - 09:34

das müsste gehen, wenn du den Key in der Komponente entfernst.

vbmsi

vbmsi
  • Members
  • 3 posts

Posted 26 October 2006 - 11:21

Danke für die Tipps, aber

1.Ich finde keine Möglichkeit die Datei nicht als Schlüsseldatei zu setzten.

2. Die ComponentID kann ich nicht leer (Null) setzten. Es kommt immer ein Fehler und es wird ein Wert erzeugt in dieser Form:
{0639391F-C907-4B76-BD41-D72C13039DE7}

Gruß
Andre

P.S. Anbei ein Screenshot von den Eigenschaften

Attached Images

  • Image3.jpg

Edited by vbmsi, 26 October 2006 - 11:21.


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 26 October 2006 - 11:55

Verwendest du InstallShield innerhalb von Visual Studio? Kannst du mal einen Screenshot vom ganzen Bildschirm posten, ich weiss im Moment gar nicht wie man zu der Ansicht kommt die du da hast.

vbmsi

vbmsi
  • Members
  • 3 posts

Posted 26 October 2006 - 13:55

Hallo
Ich verwende den VisualStudio MSI Installer V6

Gruß
Andre

Attached Images

  • Image1.jpg


Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 27 October 2006 - 10:39

Ach so, also gar nicht InstallShield? Das ist was anderes. Ich glaube da hast du schlechte karten, wahrscheinlich geht das damit gar nicht. Du musst entweder die .msi Datei später nachbearbeiten, z.B. mit Orca, oder ein "richtiges" MSI Tool verwenden. Visual Studio ist in dieser Hinsicht sehr beschränkt.

Mandragor

Mandragor
  • Full Members
  • 5 posts

Posted 09 January 2007 - 13:35

Hallo!

QUOTE
Wenn die Dateien nicht als Schlüsseldatei einer Komponente markiert sind werden sie beim Programmstart nicht überprüft.


Jedoch werden die Dateien beim Aufruf der Repair Funktion über das MSI repariert. Mache ich einen Fehler, oder ist dies so vorgesehen?

QUOTE
Eine weitere Möglichkeit wäre, die betreffende Komponente mit leerer ComponentId anzulegen. Dann wird sie allerdings auch nicht deinstalliert.


Ist diese Vorgehensweise Konform mit den MSI Richtlinien? Liege ich richtig, dass die Komponente über hinzufügen zur "RemoveFile" Tabelle gelöscht werden kann?

Thanks in advance
Mandragor

Stefan Krueger

Stefan Krueger

    InstallSite.org

  • Administrators
  • 13,269 posts

Posted 11 January 2007 - 22:10

QUOTE
Jedoch werden die Dateien beim Aufruf der Repair Funktion über das MSI repariert. Mache ich einen Fehler, oder ist dies so vorgesehen?
Das ist so vorgesehen. Wenn du die Reparatur manuell startest werden ALLE Dateien repariert: Property REINSTALL=ALL

QUOTE
Ist diese Vorgehensweise Konform mit den MSI Richtlinien?

Ja, es ist offiziell möglich eine Komponente mit leere GUID anzulegen. Allerdings ist es unüblich, denn die Auto-Reparatur ist ja eigentlich ein Feature von Windows Installer.

QUOTE
Liege ich richtig, dass die Komponente über hinzufügen zur "RemoveFile" Tabelle gelöscht werden kann?
Die Dateien ja. Die Komponente nein, weil Windows ja gar nicht weiss dass sie installiert ist. Komponenten werden über ihre GUID identifiziert. Ohne GUID "sieht" Windows die Komponente als solche gar nicht.