Heim > Backend-Entwicklung > C++ > Wie kann ich COM-DLLs in MSI-Installationsprogrammen registrieren, ohne benutzerdefinierte Aktionen oder Batchdateien zu verwenden?

Wie kann ich COM-DLLs in MSI-Installationsprogrammen registrieren, ohne benutzerdefinierte Aktionen oder Batchdateien zu verwenden?

Patricia Arquette
Freigeben: 2024-11-26 12:44:09
Original
1028 Leute haben es durchsucht

How Can I Register COM DLLs in MSI Installers Without Using Custom Actions or Batch Files?

COM-DLLs ohne benutzerdefinierte Aktionen oder Batchdateien registrieren

Einführung

COM-DLLs sollten aufgrund von Zuverlässigkeitsproblemen während der Installation nicht selbst registriert werden. Stattdessen sollten COM-Registrierungsinformationen extrahiert und in der MSI-Datenbank kompiliert werden. Dieser Vorgang wird durch das Tool heat.exe von WiX erleichtert.

Verwendung von Heat.exe

Um COM-Registrierungsdaten aus Ihrer DLL zu extrahieren, führen Sie heat.exe mit dem folgenden Befehl aus:

heat.exe file YourFileName.ocx -o YourFileName.wxs
Nach dem Login kopieren

Dadurch wird eine WiX-Quelldatei mit den erforderlichen Registrierungsdaten generiert.

Einbindung der Heat.exe-Ausgabe in WiX

Die von heat.exe extrahierten Registrierungsdaten können in Ihre Haupt-WiX-Quelldatei eingefügt werden. Anweisungen dazu finden Sie im unten verlinkten Artikel:

  • [So referenzieren Sie eine Wärmeleistung (wxs) in Wix (Befehl Zeile)](https://stackoverflow.com/questions/1685282/how-to-reference-a-heat-outputwxs-in-wix-command-line)

Fehlende Abhängigkeiten

Fehlende Abhängigkeiten können die erfolgreiche COM-Registrierung verhindern. Verwenden Sie Dependency Walker oder das neuere Dependencies-Tool, um fehlende Abhängigkeiten zu identifizieren. Stellen Sie sicher, dass diese Abhängigkeiten während der Installation verfügbar sind, entweder lokal oder im Pfad.

64-Bit-Binärdateien (optional)

Heat.exe verarbeitet derzeit 64-Bit-COM-Binärdateien nicht korrekt. Wenn Sie mit einer 64-Bit-Komponente arbeiten, müssen Sie möglicherweise das WiX-Erweiterungspaket (nicht kostenlos) verwenden oder versuchen, sich wie hier beschrieben selbst zu registrieren.

Zusammenfassung

COM-Registrierung sollte sein erfolgt über WiX und nicht über benutzerdefinierte Aktionen oder Batchdateien. Indem Sie heat.exe verwenden, um COM-Registrierungsdaten zu extrahieren und in Ihre WiX-Quelle zu integrieren, können Sie während der Installation eine zuverlässige und effiziente COM-Registrierung sicherstellen.

Das obige ist der detaillierte Inhalt vonWie kann ich COM-DLLs in MSI-Installationsprogrammen registrieren, ohne benutzerdefinierte Aktionen oder Batchdateien zu verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage