Erstellen einer COM-Komponente in einem vorhandenen Paket als privat
Ein Administrator kann erzwingen, dass eine COM-Clientanwendung immer dieselbe Kopie eines COM-Servers in einem vorhandenen Paket verwendet – ohne Auswirkungen auf andere Anwendungen – indem er eine Isolierte Komponentenbeziehung zwischen COM-Server und -Client ankämmt. Dadurch wird eine private Kopie der COM-Serverkomponente an einem Speicherort installiert, der ausschließlich von der Clientanwendung verwendet wird. Der Administrator muss Transformationen oder ein Paketerstellungstool verwenden, um Folgendes zu tun:
- Legen Sie die COM-Server-DLL und den .exe-Client in separaten Komponenten ab.
- Geben Sie in der Tabelle IsolatedComponent einen Datensatz mit der COM-Clientkomponente in der Spalte Freigegebene Komponente und der Clientanwendung _ in der Spalte _ Komponentenanwendung ein. Schließen Sie die Aktion IsolateComponents in die Sequenztabellen ein.
- Legen Sie das Bit msidbComponentAttributesSharedDllRefCount im Komponententabellendatensatz für Freigegebene Komponente _ fest. Das Installationsprogramm erfordert diese globale Refcount am freigegebenen Speicherort, um die freigegebenen Dateien und die Registrierung in Fällen zu schützen, in denen die Freigabe mit anderen Installationstechnologien besteht.