Code: function GetStr(url: string): string; const BufferSize = 6536; var hInternet, hConnect: pointer; Buffer: array[1..BufferSize] of char; BufferLen: LongWord; i: integer; begin result:=''; hInternet:=InternetOpen('Mozilla/4.0 (compatible; MSIE 6.0b; Windows NT 5.0)', INTERNET_OPEN_TYPE_PRECONFIG,0, nil, 0); if Assigned(hinternet) then try hConnect:=InternetOpenUrl(hInternet, pchar(url), nil, 0, 0, 0); repeat if not InternetReadFile(hConnect, @Buffer, SizeOf(Buffer), BufferLen) then bufferlen:=0; for i:=1 to bufferlen do result:=result+char(Buffer[i]); until bufferlen=0; finally InternetCloseHandle(hinternet); end; end; procedure TForm1.Button1Click(Sender: TObject); begin Memo1.Text := GetStr('http://www.google.ru'); end; В memo1 вижу это Code: ℼ潤瑣灹瑨汭㰾瑨汭㰾敨摡㰾敭慴栠瑴⵰煥極㵶挢 湯整瑮琭灹≥挠湯整瑮∽整瑸栯浴㭬挠慨獲瑥唽䙔㠭㸢洼瑥 慮敭∽敤捳楲瑰潩≮挠湯整瑮∽鿐뻐룐臑뫐퀠킸톽킄톾킀킼 톰킆킸₸닐퀠킸톽킂통킀킽통킂㪵퀠킲킵₱臑苑胑냐뷐룐蛑 译뫐냐胑苑룐뷐뫐룐닐룐듐뗐뻐퀠₸볐뷐뻐돐뻐뗐퀠톴톀킃 킳킾⺵㸢琼瑩敬䜾潯汧㱥琯瑩敬㰾捳楲瑰眾湩潤潧杯敬笽 䕫㩉欢潃呐圸乌攴佂癱浢㡐≃本瑥䥅昺湵瑣潩⡮⥡登牡戠眻楨 敬愨☦⠡敧䅴瑴楲畢整☦戨愽朮瑥瑁牴扩瑵⡥攢摩⤢⤩愩愽 瀮牡湥乴摯㭥敲畴湲戠籼潧杯敬欮䥅ⱽ瑨灴㩳畦据楴湯⤨牻 瑥牵楷摮睯氮捯瑡潩牰瑯捯汯㴽栢瑴獰∺ⱽ䕫偘㩉㈢㘵㜵 ㌬㘵〲㌬... WTF?o_0
Code: Memo1.Text := Utf8ToAnsi(GetStr('http://www.google.ru')); то Code: ???????????????????? ??????????????????????????? ???????????????????
Если выводит такие иероглифы, значит проблема врятли в юникоде. ТС, какая версия Delphi? Подозреваю, что >= 2007.
Спасибо! я так и подозревал, что делo не в кодировке=) Delphi XE ps поменял тип данных char на ansichar... В основном всех спасает Utf8ToAnsi, и все об этом пишут, а здесь дело в другом...