Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Überprüfung ob DLL registriert? (https://www.delphipraxis.net/61630-ueberpruefung-ob-dll-registriert.html)

go7chib 24. Jan 2006 09:15


Überprüfung ob DLL registriert?
 
Hallo,
wie kann ich mit Delphi 5 überprüfen, ob eine bestimmte DLL in der Registry registriert ist? Gibt es eine bessere Möglichkeit, als nach der GUID in der Registry zu suchen?

Garfield 24. Jan 2006 11:49

Re: Überprüfung ob DLL registriert?
 
Mit LoadLibrary bekommt man das Handle auf eine DLL. Wurde die DLL gefunden, ist das Handle ungleich 0.

tomsel 24. Jan 2006 12:01

Re: Überprüfung ob DLL registriert?
 
Die Frage bezieht sich m.E. darauf, ob eine OLE-DLL registriert wurde, und nicht, ob sie vorhanden ist.

Ich lasse es bei CreateOLEObject einfach auf eine Exception ankommen. Du kannst aber auch CLSIDFromProgID benutzen, um einen Klassennamen auf Gültigkeit zu prüfen, aber createOleObject tut auch nix anderes, nur dass halt mittels OleCheck eine Exception ausgelöst wird.

go7chib 24. Jan 2006 12:03

Re: Überprüfung ob DLL registriert?
 
Ich will die DLL gar nicht laden, da sie im Programm gar nicht verwendet wird, ich muss nur überprüfen, ob diese registriert ist.

Bernhard Geyer 24. Jan 2006 12:06

Re: Überprüfung ob DLL registriert?
 
Zitat:

Zitat von go7chib
Ich will die DLL gar nicht laden, da sie im Programm gar nicht verwendet wird, ich muss nur überprüfen, ob diese registriert ist.

100%ig sicher kannst Du nur ein wenn du die in der DLL vorhandenen COM-Objekte erzeugst ansonsten könnten:

- Die Registierung defekt sein (Alte/Zu neu/falsche Infos in Registry)
- Zusätzlich nötige DLL's nicht 100% ok registriert
- "Normale" DLL's oder Ini-Dateien fehlen.

Garfield 24. Jan 2006 21:40

Re: Überprüfung ob DLL registriert?
 
Zitat:

Zitat von tomsel
Die Frage bezieht sich m.E. darauf, ob eine OLE-DLL registriert wurde, und nicht, ob sie vorhanden ist.

Ich denke, um eine DLL laden zu können reicht es nicht aus, dass sie vorhanden ist!?

Zitat:

Zitat von Bernhard Geyer
100%ig sicher kannst Du nur ein wenn du die in der DLL vorhandenen COM-Objekte erzeugst ansonsten könnten:

Könnte da nicht eine Versionsabfrage weiterhelfen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:19 Uhr.

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