![]() |
Datenbank: Oracle • Version: se • Zugriff über: dbexpress
oci.dll kann nicht geladen werden
Hallo Zusammen,
ich habe eine .Net Anwendung mit Delphi geschrieben. Es handelt sich um eine Datenbankanwendung die von einem OracleXE Server Daten liest. Umgesetzt wurde dies mit dbExpress/Delphi. Nun habe ich das Problem, dass diese Anwendung auf einem alten PC läuft und auf dem Neuen nicht. Folgendes ist installiert .Net Framework Oracle Client usw. Beim Aufrufen der Datei erschein "oci.dll kann nicht geladen werden". Ich habe nun schon alles probiert und weiß nicht mehr weiter. Habe die Oci.dll auf schreibschutz geprüft, in den Anwendungsordner kopiert, in Windows/System32/ kopiert, .Net Framework aktualisiert, zig mal Oracle Client installiert. Über jeden weiteren Rat wäre ich dankbar. Mit freundlichen Grüßen Markus |
Re: oci.dll kann nicht geladen werden
Wird vermutlich deine oci-DLL nicht kompatible mit der dbExpress-Implementierung sein. Oracle ändert da öfter mal was inkompatible. Gib lieber ein paar € für Kompos von
![]() |
Re: oci.dll kann nicht geladen werden
Meistens reicht es aus, die Umgebungsvariable PATH um das Verzeichnis zu erweitern, in dem die OCI.DLL abgelegt ist. Achtung: Groß-/Kleinschreibung unbedingt beachten!
Grüße Mikhal |
Re: oci.dll kann nicht geladen werden
Hallo Markus,
das Problem kann auch auftreten wenn beispielsweise im Anwendungsverzeichnis eine weitere oci.dll liegt, zusätzlich zu der vom Oracle Client registrierten DLL. Wenn diese einen anderen Versionsstand hat kommt auch die von dir beschriebene Fehlermeldung. Es sollte also nur eine Oci.dll (die aktuelle vom Oracle Client) vorhanden sein. Gruß Patrick |
Re: oci.dll kann nicht geladen werden
Danke schonmal für eure schnelle Unterstützung.
Die Installation auf dem neuen PC wurde mit exakt den selben Oracle Treibern und selbe oci.dll durchgeführt. Path variable ist auch gesetzt zum Bin Verzeichnis! Bezüglich der Anzahl an oci.dll Datien habe ich auch schon alles ausprobiert. (Herzlichen Dank Patrick) Grüße Markus |
Re: oci.dll kann nicht geladen werden
Zusätzlich zu dem was andere schon schrieben: Suche mal hier im Forum nach Instantclient.
Ich selbst traue mich schon gar nicht mehr, mich auf die absolut grottenschlechten Isntaller von Oracle zu verlassen, oder ein System mit einem normalen Oracle client zu infestieren. (Der User soll ja keine Blutfehde mit mir haben, weil ich einem Server einen vollen Ora Client aufgezwungen habe) Der Instantclient ist einfach ein Satz von DLLs und Dateien, die du als Client wirklich brauchst, nicht mehr und nicht weniger. Du kannst auf die Art eine eigene TNSNames.ora und andere Settings haben, andere Apps und deren Installer werden dir also nicht ins Handwerk pfuschen können. Genauso kannst du dich ohne Probleme in ein System installieren, welches auf perfide genaue TNSnames.ora, Registry keys oder Umgebungsvariablen angewiesen ist. (Du hast keine Ahnung wieviel unglaublich schrecklich entworfene Ora-Software es in der freien Wildbahn gibt... :wall: ) Die Provider von CoreLabs sind da eine interessante Alternative: Sie sind bereits ihr eigener Client für ein Subset der Features von Oracle. Leider etwas langsamer als wenn du damit direkt die OCI benutzt. |
Re: oci.dll kann nicht geladen werden
Hat der Anwender auf das Oracle/Bin-Verzeichnis Schreibrechte? Ohne die geht es nämlich auch nicht!
Grüße Mikhal |
Re: oci.dll kann nicht geladen werden
Zitat:
Denn ein User, der Schreibrechte auf den Ordner von DLLs bekommt, die auch in Diensten benutzt ist NICHT feierlich. |
Re: oci.dll kann nicht geladen werden
@elvis: Wie du schon oben geschrieben hast: schrecklich entworfene Ora-Software...
Grüße Mikhal |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:21 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-2025 by Thomas Breitkreuz