Unvollständige Deinstallation, Laufzeitfehler 48

21/11/2007 - 23:20 von Martin Enke | Report spam
Liebe NG,

nach Stunden und Tagen der Suche habe ich nun endlich herausgefunden
warum ich beim Programmstart den Laufzeitfehler 48, Fehler beim Laden
einer DLL bekommen habe:

Es liegt nicht an einer unvollstàndigen Installation sondern an der
unvollstàndigen Deinstallation der Vorgànger-Version meines Programms.
Ich benutze den Visual Installer um mehrere ActiveX- Exen zusammen mit
dem Hauptprogramm zu installieren. Habe mich dazu genau an die Anleitung
zur Installation von COM-Objekten von MS gehalten. Das klappt auch gut.
Das Problem entsteht erst, wenn die neue Version in einen anderen Ordner
soll. Ich deinstalliere die alte Version zwar aber dabei wird bei einer
der ActiveX-Exen der Registry-Eintrag zu deren Typelib nicht gelöscht!!
Und dort steht der Pfad zur exe. Bei der Neuinstallation wird nun dieser
Eintrag nicht überschrieben und es folgt der Fehler 48.
Ich hab die ActiveX-Exe schon mit den Anderen verglichen, finde aber
keinen Unterschied.

Wer weis warum der Typelib-Eintrag bei der Deinstallation nicht gelöscht
wird?

Danke für Hilfe

PS: Ich möchte mich eigentlich nicht in ein anderes
Installationsprogramm vertiefen.

Martin
 

Lesen sie die antworten

#1 Martin Enke
23/11/2007 - 20:53 | Warnen spam
Liebe NG,

habe das Problem jetzt doch selbst lösen können:
Was in der Microsoft-KB-Anleitung fehlt ist der letzte aber wichtige
Schritt: Auch bei den Typelibs muss man die Component-Eigenschaft auf
die entsprechende Datei setzten. Tut man es nicht, dann werden die
Eintràge nicht entfernt. Und wenn bei der Neuinstallation ein anderer
Pfad gewàhlt wird taucht dann die nichtssagende Fehlermeldung
"Laufzeitfehler 48, Fehler beim Laden einer DLL" auf.

Bin sicher, bin nicht der erste, der damit Probleme hatte...

Martin

Martin Enke schrieb:
Liebe NG,

nach Stunden und Tagen der Suche habe ich nun endlich herausgefunden
warum ich beim Programmstart den Laufzeitfehler 48, Fehler beim Laden
einer DLL bekommen habe:

Es liegt nicht an einer unvollstàndigen Installation sondern an der
unvollstàndigen Deinstallation der Vorgànger-Version meines Programms.
Ich benutze den Visual Installer um mehrere ActiveX- Exen zusammen mit
dem Hauptprogramm zu installieren. Habe mich dazu genau an die Anleitung
zur Installation von COM-Objekten von MS gehalten. Das klappt auch gut.
Das Problem entsteht erst, wenn die neue Version in einen anderen Ordner
soll. Ich deinstalliere die alte Version zwar aber dabei wird bei einer
der ActiveX-Exen der Registry-Eintrag zu deren Typelib nicht gelöscht!!
Und dort steht der Pfad zur exe. Bei der Neuinstallation wird nun dieser
Eintrag nicht überschrieben und es folgt der Fehler 48.
Ich hab die ActiveX-Exe schon mit den Anderen verglichen, finde aber
keinen Unterschied.

Wer weis warum der Typelib-Eintrag bei der Deinstallation nicht gelöscht
wird?

Danke für Hilfe

PS: Ich möchte mich eigentlich nicht in ein anderes
Installationsprogramm vertiefen.

Martin

Ähnliche fragen