![]() |
wininet in .net oder eine andere lösung?(gethtml)
also ich habe die funktion gethtml(auch aus der dp) die ich gerne in .net übernhemen würde
dafür brauch man aber die wininet in der uses so nun wollte ich fragen ob es ne bestimmte net uses gibt oder die funktion ander sein muss und wenn dann wie weil so gut kann ich das ja nicht Funktion:
Delphi-Quellcode:
uses
wininet; Function GetHTML(AUrl: string): string; var databuffer : array[0..4095] of char; ResStr : string; hSession, hfile, hRequest: hInternet; dwindex,dwcodelen,datalen,dwread,dwNumber: cardinal; dwcode : array[1..20] of char; res : pchar; Str : pchar; begin ResStr:=''; if pos('http://',lowercase(AUrl))=0 then AUrl:='http://'+AUrl; hSession:=InternetOpen('InetURL:/1.0', INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0); if assigned(hsession) then begin hfile:=InternetOpenUrl( hsession, pchar(AUrl), nil, 0, INTERNET_FLAG_RELOAD, 0); dwIndex := 0; dwCodeLen := 10; HttpQueryInfo(hfile, HTTP_QUERY_STATUS_CODE, @dwcode, dwcodeLen, dwIndex); res := pchar(@dwcode); dwNumber := sizeof(databuffer)-1; if (res ='200') or (res ='302') then begin while (InternetReadfile(hfile, @databuffer, dwNumber, DwRead)) do begin if dwRead =0 then break; databuffer[dwread]:=#0; Str := pchar(@databuffer); resStr := resStr + Str; end; end else ResStr := 'Status:'+res; if assigned(hfile) then InternetCloseHandle(hfile); end; InternetCloseHandle(hsession); Result := resStr; end; |
Re: wininet in .net oder eine andere lösung?(gethtml)
push
|
Re: wininet in .net oder eine andere lösung?(gethtml)
so nochmal das push²
|
Re: wininet in .net oder eine andere lösung?(gethtml)
Der Namespace System.Net dürfte in diesem Fall interessant sein.
![]() |
Re: wininet in .net oder eine andere lösung?(gethtml)
vieleicht
werde mal versuchen das in delphi.net zu übersetzen |
Re: wininet in .net oder eine andere lösung?(gethtml)
Code:
//------------------------------------------------------------------------------
// <autogenerated> // This code was generated by a tool. // Runtime Version: 1.1.4322.573 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // </autogenerated> //------------------------------------------------------------------------------ uses System.Net, System.IO, System.Text; type TArrayOfString = array of string; ClientGET = class strict private class var bShow: Boolean; public class procedure Main(args: TArrayOfString); virtual;static; class procedure showusage; virtual;static; class procedure getPage(url: string); virtual;static; end; implementation {$AUTOBOX ON} {$HINTS OFF} {$WARNINGS OFF} class procedure ClientGET.Main(args: TArrayOfString); begin if (args.Length < 1) then showusage else begin if (args.Length = 2) then bShow := False else bShow := True; getPage(args[0]); end; Console.WriteLine; Console.WriteLine('Drcken Sie die EINGABETASTE, um fortzufahren...'); Console.ReadLine; end; class procedure ClientGET.showusage; begin Console.WriteLine('Versucht, einen URL abzurufen'); Console.WriteLine(''#13#10'Verwendung:'); Console.WriteLine('ClientGET URL'); Console.WriteLine('Beispiele:'); Console.WriteLine('ClientGET http://www.microsoft.com/net/'); end; class procedure ClientGET.getPage(url: string); type TArrayOfArrayOfChar = array of array of Char; TArrayOfChar = array of Char; var str: string; count: Integer; read: TArrayOfChar; sr: StreamReader; encode: Encoding; ReceiveStream: Stream; req: WebRequest; _result: WebResponse; begin _result := nil; try try req := WebRequest.Create(url); _result := req.GetResponse; ReceiveStream := _result.GetResponseStream; encode := System.Text.Encoding.GetEncoding('utf-8'); sr := StreamReader.Create(ReceiveStream, encode); Console.WriteLine(''#13#10'Antwortstream erhalten'); if bShow then begin read := New(TArrayOfArrayOfChar, 256); count := sr.Read(read, 0, 256); Console.WriteLine('HTML...'#13#10); while (count > 0) do begin str := string.Create(read, 0, count); Console.Write(str); count := sr.Read(read, 0, 256); end; Console.WriteLine(''); end; except on Exception do Console.WriteLine(''#13#10'Der angeforderte URI konnte nicht gefunden werden oder ist ungltig.'); end; finally if (_result <> nil) then _result.Close; end; end; |
Re: wininet in .net oder eine andere lösung?(gethtml)
oh gerade erst gesehen haste das getestet wenn ich fragen darf
werde das gleich mal ausprobieren |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:40 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