Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Unter XP Fehler: Klasse nicht registriert,aber 2000 klappt ? (https://www.delphipraxis.net/38618-unter-xp-fehler-klasse-nicht-registriert-aber-2000-klappt.html)

bjacke 21. Jan 2005 21:52


Unter XP Fehler: Klasse nicht registriert,aber 2000 klappt ?
 
Hi,
ich habe ein Programm,was unter Win 2000 ohne Probleme läuft, aber unter XP krieg ich einen Fehler?
Kann das an den Komponenten liegen?
Delphi-Quellcode:
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs,MSXML2_TLB, StdCtrls, Menus, ComCtrls, ExtCtrls, Spin,Registry,IniFiles,
  Buttons,ShellApi,CoolTrayIcon, TextTrayIcon, IdBaseComponent,
  IdComponent, IdTCPConnection, IdTCPClient, IdHTTP;
Hat jemand eine Idee? :wall:

Robert_G 21. Jan 2005 22:17

Re: Unter XP Fehler: Klasse nicht registriert,aber 2000 klap
 
Zitat:

Zitat von bjacke
Delphi-Quellcode:
uses ..., MSXML2_TLB, ..,;

*_TLB -> TypeLibrary -> COM -> muss installiert sein (oder du hast es im Anwendungsverzeuchnis inklusive einer leeren Anwendungsname.exe.local)
Ist es installiert? ;)

bjacke 22. Jan 2005 07:49

Re: Unter XP Fehler: Klasse nicht registriert,aber 2000 klap
 
Zitat:

Zitat von Robert_G
Zitat:

Zitat von bjacke
Delphi-Quellcode:
uses ..., MSXML2_TLB, ..,;

*_TLB -> TypeLibrary -> COM -> muss installiert sein (oder du hast es im Anwendungsverzeuchnis inklusive einer leeren Anwendungsname.exe.local)
Ist es installiert? ;)

Danke erstmal, dass du das Problem lokalisiert hast. Muss ich die TypeLibary jetzt irgendwie mitliefern und wenn ja, wie geht das :?:.

Jens Schumann 22. Jan 2005 08:53

Re: Unter XP Fehler: Klasse nicht registriert,aber 2000 klap
 
Hallo,
die Typbibliothek steckt in der msxml2.dll.
Prüfe erstmal ob diese DLL auf dem Rechner vorhanden ist.
Wenn nicht (halte ich aber für äußerst unwahrscheinlich)
kopiere die DLL in das ..\system32 Verzeichnis.

Dann musst Du die Typebibliothek registrieren.
Das würde ich auch machen, wenn die DLL auf dem Rechner
vorhanden ist. Mit regsrv32.exe werden solche Dinge
registriert.

registrieren:
Code:
regsrv32.exe ..\system32\msmxl2.dll
registrieren: (silent) d.h. ohne abschließenden Dialog, dass das Ding registriert wurde
Code:
regsrv32.exe /s ..\system32\msmxl2.dll
entfernen:
Code:
regsrv32.exe / u ..\system32\msmxl2.dll

Luckie 22. Jan 2005 08:57

Re: Unter XP Fehler: Klasse nicht registriert,aber 2000 klap
 
Aber bevor ich das mache, würde ich mich vergewissern, ob man diese DLL so einfach mit seinem Programm weitergeben darf. Und was ist, wenn ein Programm eine aktuellere Version benötigt und diese installiert hat und du jetzt diese durch eine ältere ersetzt? Da wünsche ich dem Support für das andere Programm viel Spass veim Suchen des Schuldigen. :roll:

Was ich sagen will: Ihr könnt doch nicht einfach so wie es euch passt DLLs ersetzte und im System registrieren.

Jens Schumann 22. Jan 2005 09:07

Re: Unter XP Fehler: Klasse nicht registriert,aber 2000 klap
 
Zitat:

Zitat von Luckie
Aber bevor ich das mache, würde ich mich vergewissern, ob man diese DLL so einfach mit seinem Programm weitergeben darf. :roll:

Die DLL gehört eigentlich zu jeder Windowsinstallation.
Zitat:

Zitat von Luckie
Und was ist, wenn ein Programm eine aktuellere Version benötigt und diese installiert hat und du jetzt diese durch eine ältere ersetzt? Da wünsche ich dem Support für das andere Programm viel Spass veim Suchen des Schuldigen.

Es handelt sich um eine DLL mit COM Objekten. Da ist es kein Problem. bjacke könnte auch
nachschauen, ob es die msxml3.dll o. msxml4.dll auf dem Rechner gibt. Da ein einmal
veröffentlichtes Interface nicht mehr geändert (MS verhält sich hier vorbildlich) werden darf
funktioniert es auch mit diesen DLL's. D.h. in der msxml4.dll ist die Typbibliothek der msxml2.dll
enthalten.
Zitat:

Zitat von Luckie
Ihr könnt doch nicht einfach so wie es euch passt DLLs ersetzte und im System registrieren.

Doch - wenn man weiß was man macht ist das gar kein Problem.

bjacke 22. Jan 2005 10:01

Re: Unter XP Fehler: Klasse nicht registriert,aber 2000 klap
 
Also, ich hab jetzt Mal geguckt. Habe die neuste Version von MSXML installiert.

Jetzt Frage an euch, ist MSXML 4 standartmäßig auf XP drauf und wenn nicht, darf man die so einfach mit dem Programm ausliefern.


P.S. Ich habe keinen PC mit XP ;-).

CalganX 22. Jan 2005 11:04

Re: Unter XP Fehler: Klasse nicht registriert,aber 2000 klap
 
Hi,
nein, MSXML ist nicht bei jeder Windows-XP-Installation dabei. Das hatte ich mal gesagt, aber das hat sich als falsch erwiesen. :duck:

Die DLL der MSXML würde ich aber nicht einfach ohne weiteres weitergeben. Ich würde eher den Benutzer auffordern die entsprechende Installation zu starten.

Chris

bjacke 22. Jan 2005 13:21

Re: Unter XP Fehler: Klasse nicht registriert,aber 2000 klap
 
Zitat:

Zitat von Chakotay1308
Hi,
nein, MSXML ist nicht bei jeder Windows-XP-Installation dabei. Das hatte ich mal gesagt, aber das hat sich als falsch erwiesen. :duck:

Die DLL der MSXML würde ich aber nicht einfach ohne weiteres weitergeben. Ich würde eher den Benutzer auffordern die entsprechende Installation zu starten.

Chris

Danke! Bin eh für volle Benutzerkonrolle!

bjacke 22. Jan 2005 13:43

Re: Unter XP Fehler: Klasse nicht registriert,aber 2000 klap
 
Ich habe jetzt Mal in meinem Windows 2000 Verzeichnis nachgeschaut und folgende Dateien gefunden:

msxml.dll
msxml3.dll
msxml3a.dll
msxml3r.dll
msxml4.dll
msxml4r.dll
msxmlr.dll

Und welche von denen ist jetzt die richtige?

Edit

Gefunden, ist die
msxml4.dll :angel2:

Nochmal danke an alle!


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:50 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz