Joined: 04 Jun 2004
Posts: 227
Location: 48°42' n.Br./09°09' ö.L.
Posted:
Wed, 28.Nov.2007, 11:16
Side-by-Side Komponenten für Inhouse-entwickelte Programmmodule sollten generell vermieden werden. SxS Komponenten werden normalerweise eingesetzt um Versionsinkompatibilitäten auszugleichen, die immer von einem schwachen Moduldesign ausgehend sind (Interface-Changes, Methodeninkompatibiltät etc.) Insofern sollte das Setup nie Unzulänglichkeiten der Produktentwicklung ausgleichen (müssen).
Leider kann man das für eigene Setups immer schön befolgen, bei Repacketieren stößt man schnell an Grenzen und muß sich mit Side-by-Side DLLs befassen um die Applikation von Hersteller A mit der von Hersteller B gemeinsam zu Laufen zu bringen...
Behandlung von Sxs-Komponenten
Unterschieden wird zwischen Win32 und .NET Assemblies, weiterhin zwischen private oder shared Assemblies. Sie steuert auch den Ort an den die Datei installiert wird.
Nach Spezifikation der SxS-Komponente wird diese in das Windows Installer Setup integriert. Dabei sind folgende Punkte zu beachten:
* Pro MSI Komponente nur eine Assembly
* Alle zur Assembly gehörigen Dateien sollten in einer Komponente sein
* Jede Komponente mit Assembly muß einen Eintrag in der MSIAssembly table haben
* In der MSIAssemblyName table muß ein eindeutiger Name für die Assembly angegeben werden.
* Für COM Registrierungen sollte die Registry table anstatt der Class table benutzt werden.
* Für shared SxS-Komponenten muß die Spalte File_Application in der table MSIAssembly leer bleiben, dadurch wird die Datei(en) automatisch in das WinSxS Verzeichnis installiert.
Evtl. müssen bei shared SxS-Komponenten diese digital signiert werden. Hier zu muß ein digitaler Key erzeugt werden und das MSI durch Einträge in die MsiDigitalSignature und MsiDigitalCertificate table signiert werden.
View next topic View previous topic
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
Service provided by flatbyte.com
::
Powered by phpBB
:: FI Theme
:: Imprint ::
All times are GMT + 1 Hour