Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi SSL.-Bibliothek konnte nicht geladen werden. (https://www.delphipraxis.net/62607-ssl-bibliothek-konnte-nicht-geladen-werden.html)

Marvin666 7. Feb 2006 09:41


SSL.-Bibliothek konnte nicht geladen werden.
 
Beim Aufruf eines Posts erhalte ich immer die Meldung
Zitat:

Im Projekt... ...ist eine Exception der Klasse EIdOSSLCouldNotLoadSSLLibrary aufgetreten. Meldung: "SSL.-Bibliothek konnte nicht geladen werden."
Vielleicht wichtig: Es wird eine https-Adresse verwendet. Könnte es deshalb Probleme geben ?

Delphi-Quellcode:
function TForm1.SendPostData(Ahttp: TIdHTTP; const AtoURL: string): string;
  //AtoURL: An diese URL werden die Informationen gesendet
  //Result: HTML-Ergebnis (quasi Antwort des Scripts)
var
  aStream: TMemoryStream;
  Params: TStringStream;
begin
  aStream := TMemoryStream.create;
  Params := TStringStream.create('');
  AHTTP.Request.ContentType := 'application/x-www-form-urlencoded';

  try
    //Dieser Stream wird letztendlich gesendet
    //Stream mit Werten füllen
    Params.WriteString('TRANSAKTIONSKENNUNG=' + transaktionskennung + '&');
    Params.WriteString('INSTITUTION=' + institution);

    try
      //Stream an das PHP-Script senden
      AHTTP.Post(AtoURL,Params,aStream); //An dieser Stelle wird der Fehler angezeigt.
    except
      on E: Exception do
        showmessage('Fehler bei der Übertragung: ' + E.Message);
    end;
    aStream.WriteBuffer(#0' ', 1);
    Result := PChar(aStream.Memory);
  except
    Result := 'Fehler!';
  end;
end;

Ich verwende Delphi 7, Indy 10

Hat jemand eine Idee ?
Im Voraus vielen Dank.

marabu 7. Feb 2006 10:24

Re: SSL.-Bibliothek konnte nicht geladen werden.
 
Herzlich willkommen in der Delphi-PRAXiS.

SSL muss installiert sein, bevor Indy für sichere Kommunikationsverbindungen eingesetzt werden kann. Hier ein Tutorial: klick

Grüße vom marabu

Marvin666 8. Feb 2006 13:53

Re: SSL.-Bibliothek konnte nicht geladen werden.
 
Danke für die schnelle Antwort. :-D

Mit "SSL muss installiert sein" meinst du doch, dass ich das machen muss, was in dem Tutorium steht oder muss da wirklich noch was installiert/eingebunden werden ?

Wird also die Zugriffsverletzung ausgegeben, weil kein Zertifikat angegeben wurde ?!
Alles andere hatte ich nämlich schon so eingestellt wie es beschrieben wird.

marabu 8. Feb 2006 17:23

Re: SSL.-Bibliothek konnte nicht geladen werden.
 
Zitat:

Zitat von Marvin666
... oder muss da wirklich noch was installiert/eingebunden werden ?

Tatsächlich wollte ich dir zwei Dinge mit auf den Weg geben: Zuerst musst du dir die IndySSL Bibliotheken besorgen - du findest sie auf der selben Website unter Download. Dann musst du dein Zertifikat konfigurieren - und das beschreibt das Tutorial.

marabu

Marvin666 15. Feb 2006 07:21

Re: SSL.-Bibliothek konnte nicht geladen werden.
 
Danke für die Antworten. Läuft jetzt :thumb:

Noch ein kleiner Hinweis:
Sollte die Meldung "HTTP/1.1 401 Authorization Required" auftauchen, müssen Username und Passwort wie folgt gesetzt werden:
Delphi-Quellcode:
    ...
    //Die Parameter werden gesetzt:
    Params.WriteString('Parameter1=' + ParameterWert1 + '&');
    Params.WriteString('Parameter2=' + ParameterWert2);

    //Username und Passwort nicht vergessen...
    AHTTP.Request.BasicAuthentication:=true;
    AHTTP.Request.Username:='Username';
    AHTTP.Request.Password:='Passwort';

    //...und ab die POST
    try
      AHTTP.Post(AtoURL,Params,aStream);
    except
    ...

gizzy 8. Apr 2008 21:46

Re: SSL.-Bibliothek konnte nicht geladen werden.
 
Zwar altes Thema, aber hier liegt mein Problem. Warum also ein neues erstellen?

Meine Frage:
Weiter oben steht ein Link zu ein Tutorial. Vielleicht ist das jetzt meine Persönlich Meinung, aber das ist das schlechteste was ich je gesehen habe. Obwohl ich der Englischen Sprache recht gut mächtig bin, verstehe ich da nur Bahnhof. Es werden Schritte zb übersprungen.

Folgendes habe ich jetzt gemacht:
  • Mir ein SSL Certificat bei einen kostenlosen anbieter geholt (Klick mich).
  • Mir die Libarys runter geladen.
  • Da ich ja jetzt noch den Schlüssel brauche muss ich das anscheinend Umwandeln. Mit openssl.exe, die ich leider trotz Hinweis nicht gefunden habe...

Nunja, vielleicht bin ich auch nur total bescheuert.

Folgendes möchte ich erreichen:
Ich möchte eine Error-Log Datei gerne auf meinen Webserver übertragen, dazu benutze ich den Indy FTP Client.
Jetzt Sniff ich mein Programm und erhalte in klartext: Loginname und Passwort. Lächerlich, ich möchte mein FTP Server ja nicht Free4all machen.. . Einzige möglichkeit scheint mir da SSL. Dazu die Komponente von indy über IOHandler in meine FTP Komponente eingebunden.
Mit den SSL-DLL's in dem ordner bekomme ich keine Fehlermeldung "ohne den key und cre File", aber das Prgramm friert ein und es passiert gar nicht mehr, auch kein eingestellter Timeout.. .

Wäre Toll wenn ihr mir helfen könntet. Ein einfaches erklären der Schritte würde schon genügen :)

Noch eine Weitere Frage: Zusätzlich zu den DLL's muss später noch etwas in den Ordner meines Clients? Was muss ich auf dem Server liegen haben und wo?

BBoy 28. Mai 2009 15:20

Re: SSL.-Bibliothek konnte nicht geladen werden.
 
So ein Aufwand nur um Googlemails abzufragen.....
Sorry mein englisch ist echt mies. Ich kapier das Tutorial nicht. Ich weis noch nicht mal wo ich das certificat her bekomme.
Könnte jemand so nett sein mal eine deutsche Anleitung schreiben wie ich es hin bekomme dass IdSSLIOHandlerSocketOpenSSL1 funktioniert?

OG Karotte 28. Mai 2009 16:15

Re: SSL.-Bibliothek konnte nicht geladen werden.
 
Ich glaub' das sind zwei verschiedene paar Schuhe:

Da oben geht es um eine https-Verbindung und Du scheinst 'nen eigenen Mailclient zubauen, oder?

Wenn letzteres Zutrifft, dann schau Dir, in Bezug auf den reinen Mailabruf über SSL, mal dieses hier an.

MartinK 13. Sep 2014 14:37

AW: SSL.-Bibliothek konnte nicht geladen werden.
 
Dies ist zwar schon ein uralter Thread, ich habe aber aktuell genau das gleiche Problem
- Meine Applikation ist mit XE6 und Indy erstellt.
Auf diesem PC läuft sie einwandfrei

- Die Applikation soll allerdings auf einem anderen PC (einem NUC) 24h/7d laufen um dort meine PayPal Käufe im Hintergrund und bei geringem Stromverbrauch zu managen
auf diesem Rechner bekomme ich die fehlermeldng "SSL.Bibliothek konnte nicht geladen werden"
Verwendete Indy Objekte: IDHTTP, IDSMTP, IDmessage


gibt es da keinen einfachen workaround?

LG Martin

Klaus01 13. Sep 2014 18:23

AW: SSL.-Bibliothek konnte nicht geladen werden.
 
Guten Abend,

die SSL Bilbiotheken hast Du auch auf dem Rechner?
a) im Verzeichnis der Exe
b) in einem Verzeichnis des Suchpfades

Grüße
Klaus

MartinK 14. Sep 2014 06:30

AW: SSL.-Bibliothek konnte nicht geladen werden.
 
Hallo Klaus

Ich habe folgendes Archiv in den Folder der *.exe extrahiert: openssl-1.0.1i-x64_86-win64.zip
da es ein Intel NUC mit Win 8. 64Bit ist sollte das doch passen, oder?

Fehlermeldung kommt trotzdem, beim ersten Aufruf der Funktion die sich ins Web verbindet.

hstreicher 14. Sep 2014 08:25

AW: SSL.-Bibliothek konnte nicht geladen werden.
 
Ich würde sagen

32 Bit Programm 32 Bit DLLs ,

Windows ist da egal

MartinK 14. Sep 2014 09:40

AW: SSL.-Bibliothek konnte nicht geladen werden.
 
herzlichen Dank !! Damit klappt's.
Ich vermutete die DLLs sind an das OS (win 8.1 64Bit) gebunden und hatte deswegen die falschen verwendet

TipTop !!!!

Sir Rufo 14. Sep 2014 09:54

AW: SSL.-Bibliothek konnte nicht geladen werden.
 
Zitat:

Zitat von MartinK (Beitrag 1272500)
herzlichen Dank !! Damit klappt's.
Ich vermutete die DLLs sind an das OS (win 8.1 64Bit) gebunden und hatte deswegen die falschen verwendet

TipTop !!!!

Nein, du vermutest da völlig falsch. Du brauchst immer die DLL mit der Bitterkeit der Anwendung, die diese benutzen soll. Mit dem Betriebssystem hat es nur insofern zu tun, dass auf einem 32bit OS eben keine 64bit Anwendung laufen kann.

Maliko 2. Jun 2020 12:36

AW: SSL.-Bibliothek konnte nicht geladen werden.
 
Moin,

ich weiß der Thread ist alt aber wenn es schon einen gibt, warum soll ich dann nen neuen erstellen.

Und zwar habe ich das Problem dass immer wenn ich meinen REST-Server (DataSnap) starten will, bekomme ich die Fehlermeldung: SSL.-Bibliothek konnte nicht geladen werden. OpenSSL ist installiert (hab mich an Variante 1 von http://docwiki.embarcadero.com/RADStudio/Rio/de/OpenSSL gehalten).

Ich hab auch nach der Installation den Rechner neugestartet. Trotzdem bekomme ich die Fehlemeldung. OpenSSL funktioniert auch ansonsten, ich hab ein Zertifikat erfolgreich erstellen können.

Könnte mir jemand vielleicht sagen, was da evntl. im Busch sein könnte?

Viele Grüße
Maliko

jaenicke 2. Jun 2020 13:01

AW: SSL.-Bibliothek konnte nicht geladen werden.
 
Du musst da nichts installieren, es genügt, wenn die libeay32.dll und ssleay32.dll in deinem Anwendungsordner liegen. Die musst du ja ohnehin mitliefern, von daher ist es am sinnvollsten auch gleich so zu testen.

Vielleicht hast du die falsche Version von OpenSSL installiert. In der 1.1.x gibt es die in der Doku genannten DLLs nicht mehr. Du musst die 1.0.x verwenden. Das hier ist der korrekte Link (steht auch dort in der von dir verlinkten Doku):
https://indy.fulgan.com/SSL/


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:46 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