Installieren einer COM-Komponente an einem privaten Speicherort

Um zu erzwingen, dass eine COM-Clientanwendung immer die gleiche Kopie eines COM-Servers verwendet, erstellen Sie das Installationspaket der Anwendung, um eine Beziehung zwischen isolierten Komponenten zwischen dem COM-Server und dem Client anzugeben. Dadurch wird eine private Kopie der COM-Serverkomponente an einem Speicherort installiert, der ausschließlich von der Clientanwendung verwendet wird. Gehen Sie beim Erstellen des Pakets wie folgt vor:

  • Legen Sie die COM-Server-DLL und den .exe-Client in separate Komponenten ab.
  • Geben Sie in der Tabelle IsolatedComponent einen Datensatz mit der COM-Clientkomponente in der _ Spalte Komponenten freigegeben und der Clientanwendung in der _ Spalte Komponentenanwendung ein. Schließen Sie die IsolateComponents-Aktion in die Sequenztabellen ein.
  • Legen Sie das Bit msidbComponentAttributesSharedDllRefCount im Komponententabellendatensatz für Component _ Shared fest. Das Installationsprogramm erfordert diese globale Refcount-Anzahl am freigegebenen Speicherort, um die freigegebenen Dateien und die Registrierung in Fällen zu schützen, in denen eine Freigabe mit anderen Installationstechnologien erfolgt.