Hallo,
ich suche und lese seit zwei Tagen alle Foren ab auf der Suche nach meinem Problem.
Ich möchte gerne mit
Indy zu einer sicheren Webseite verbinden und per Post eine Datei hochladen.
Benutzername und Kennwort sind mir bekannt.
Delphi-Quellcode:
MultiPartFormDataStream := TMsMultiPartFormDataStream.Create;
try
httpMain.Request.BasicAuthentication := true;
httpMain.Request.Username := URLBenutzername;
//User
httpMain.Request.Password := URLPasswort;
//Passwort
except
end;
try
httpMain.Request.ContentType := MultiPartFormDataStream.RequestContentType;
// Datei laden
MultiPartFormDataStream.AddFile(InvoiceDateiname, ExtractFilePath(Application.EXEName)+InvoiceDateiname, '
');
MultiPartFormDataStream.PrepareStreamForDispatch;
MultiPartFormDataStream.Position := 0;
try
Response := httpMain.Post(
URL, MultiPartFormDataStream);
finally
ShowMessage('
Rückgabe: '+Response);
end;
finally
MultiPartFormDataStream.Free;
end;
Aber ich erhalte immer die Fehlermeldung: Could not load SSL library.
Die beiden Dateien libeay32.dll und ssleay32.dll liegen in der Version openssl-0.9.8h im Projektverzeichnis.
Meine
Indy-Version ist die installierte aus dem
BDS 2006. (IndyCore 10.0.0.17)
Ich habe auch schon wie in einem Thread gelesen die Header-Datei IdSSLOpenSSLHeaders.pas ausgetauscht,
das sollte dann alles kompatibel sein. Aber ich bekomme immer noch die gleiche Meldung.
Den IOHandler habe ich auf IdSSLIOHandlerSocketOpenSSL1 gesetzt, bei dem Verify Depth = 2, eine Zertifikatsdatei und die
Method sslvSSLv23 eingestellt sind.
Wer kann mir helfen ?
Ich brauche eine schnelle Lösung. Notfalls auch ohne
Indy.
Gruß
Holger