moin zusammen,
hab nen geist in der maschine und suche nen exorzisten
ich hab eine funktion zum laden einer
html-seite auf die platte mit InternetOpen und InternetOpenURL. Aus irgendeinem Grund funktioniert die Routine auf einigen Rechnern, auf anderen wieder nicht. Der Aufruf wird dann immer mit der Fehlermeldung 1784 quittiert.
Code:
function http_via_WinApi(const fileURL: string; FileName :string ): ansistring;
var
hSession,
hURL : HInternet;
Buffer : array[1..C_BUFFER] of Byte;
BufferLen : DWORD;
acHtml : File;
begin
hSession := nil;
hURL := nil;
fileName := tempPath;
try
hSession := InternetOpen(PChar(browserExe), Internet_Open_Type_PreConfig, nil, nil, 0);
if hSession <> nil then
try
hURL := InternetOpenURL(hSession, PChar(fileURL), nil, length(fileUrl),INTERNET_FLAG_RELOAD ,0);
try
AssignFile(acHtml, FileName);
Rewrite(acHtml,1);
repeat
InternetReadFile(hURL, @Buffer,
SizeOf(Buffer), BufferLen);
BlockWrite(acHtml, Buffer, BufferLen)
until BufferLen = 0;
CloseFile(acHtml);
Result:= dateizugriffe.getHttpData(fileName);
finally
InternetCloseHandle(hURL)
end;
finally
InternetCloseHandle(hSession)
end;
Das hSession-
Handle funktioniert aber das hUrl-
handle bekommt er nicht zu greifen.
Der Fehler ist weder Betriebssystemspezifisch noch taucht er bei einer bestimmten Art von Internetverbindung auf. Er is halt da oder auch net.
Weiss jemand weiter? (dummer weise taucht der fehler auch nicht auf meinem rechner auf und deshalb is debuggen echt schwer
danke im vorraus
patrik