Hallo,
ich steh vor einem Rätsel...
Beschreibung:
Mein Programm ist eine 32 Bit Application - das mit Systemrechten läuft (erstellt via DelphiXE4) und Dateinen downloaden sollte
Fehler
Auf einem Win2016 Server (64bit) funktioniert mein download nicht:Fehler SSL Bibliothek nicht gefunden.
Code
Delphi-Quellcode:
procedure TVM_INDEX.starte_download;
var
IdHTTP1: TIdHTTP;
Stream: TMemoryStream;
Url, FileName:
String;
begin
IdOpenSSLSetLibPath(mainform.datenpfad + '
index_download\');
Url := '
https://data.statistik.gv.at/data/OGD_vpi96_VPI_1996_1.csv';
FileName := mainform.datenpfad + '
index_download/' + '
OGD_vpi96_VPI_1996_1.csv';
IdHTTP1 := TIdHTTP.Create(self);
IdHTTP1.IOHandler := TIdSSLIOHandlerSocketOpenSSL.Create(
nil);
Stream := TMemoryStream.Create;
try
IdHTTP1.Get(
Url, Stream);
Stream.SaveToFile(FileName);
finally
IdHTTP1.IOHandler.Free;
Stream.Free;
IdHTTP1.Free;
end;
Hinweise:
Im Ordner: mainform.datenpfad + 'index_download\' -> liegen die zwei 32bit
indy Dateine: ssleay32.dll / libeay32.dll
Es funktioniert auf anderen Systemen - dieser Win2016er will aber nicht
Durch "IdOpenSSLSetLibPath" sage ich ja explizit, welche
dll geladen werden soll .. wieso findet er die existierenden! Dateien nicht?
ich hab in Windows/system32 die 2
dll´s reinkopiert - hilft auch nix
Ich hab in den Application-Pfad die 2
dll´s reinkopiert - hilft auch nix
Detail-Infos über die Dateien
siehe JPeg
Danke für Hinweise, wie ich das zum laufen bekomme
LG
Erich
Erich Wanker - for life:=1971 to lebensende do begin ..
O
/H\
/ \