ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
|

25.12.2009, 13:17
|
|
Познающий
Регистрация: 14.05.2009
Сообщений: 92
Провел на форуме: 299447
Репутация:
5
|
|
Сообщение от patcher
FormOnShow
Код:
ShowWindow(Application.Handle, sw_Hide);
Спасибо =) Не подумал в онШов засунуть ^^
|
|
|
Indy в потоке - утечка памяти |

25.12.2009, 13:30
|
|
Banned
Регистрация: 25.11.2007
Сообщений: 62
Провел на форуме: 1702086
Репутация:
89
|
|
Indy в потоке - утечка памяти
Доброго времени суток!
Имею проблему с утечкой памяти.
Код потока:
Код:
procedure Test.Execute;
var
http : Tidhttp;
s : string;
compressor : tIdCompressorZLib;
begin
http := Tidhttp.Create; http.Request.AcceptEncoding := 'gzip, deflate';
compressor := tIdCompressorZLib.Create; http.Compressor := compressor;
s := http.get ('http://yandex.ru');
http.Free; compressor.Free; exit;
end;
После остановки, по идее, он должен освободить занимаемую память. Но этого не происходит - уже через час бесперебойной работы программы она занимает 50-60 мб. оперативной памяти, против 2 мб. при запуске. Чем дольше работает - тем больше кушает.
Помогите разобраться в проблеме, пожалуйста - программы должны сутками бесперебойно работать, а этого не выходит.
|
|
|

25.12.2009, 18:57
|
|
Познающий
Регистрация: 09.08.2009
Сообщений: 39
Провел на форуме: 298385
Репутация:
75
|
|
Сообщение от Pr0mo
У компонента idHTTPServer имеется процедура обработки GET запросов - OnCommandGet. В ней есть структура ARequestInfo: TIdHTTPRequestInfo и AResponseInfo: TIdHTTPResponseInfo соответственно. Заполняются надлежащим образом, типа :
ARequestInfo.Host = '127.0.0.1:5555'
ARequestInfo.Document = '/index.php'
...
AResponseInfo.ContentText := 'ok';
AResponseInfo.WriteContent;
p.s : Каков вопрос - таков ответ! 
Нет, ты не понял... попытаюсь сформулировать:
на CommandGet пишу:
procedure Form1.CommandGet(AThread: TIdPeerThread;
ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
begin
IvanetsServerMain.ServeFile(AThread, AResponseInfo,
'd:\Server_root\www'+ARequestInfo.Document);
end;
мне нужно чтобы при вводе в строке браузера
http://имя_хоста/index.php выводило полноценную пхп страницу....
Последний раз редактировалось mr_walker; 25.12.2009 в 22:10..
|
|
|

26.12.2009, 02:40
|
|
Познающий
Регистрация: 21.11.2009
Сообщений: 77
Провел на форуме: 2482290
Репутация:
29
|
|
Сообщение от wolmer
Во первых, мы соед. с сервером но не с сайтом, т.е. производится функция коннекта к серверу (а именно к порту сервера)(но не к сайту), к примеру мы приконнектились и хотим чтобы сервер нам выдал содержимое определенной страницы (в html виде естественно ), определенного сайта.........
Всё получилось спасибо, но как вывести в мемо код страницы, сейчас в мемо какие то иероглифы..
|
|
|

26.12.2009, 06:41
|
|
Познающий
Регистрация: 19.02.2009
Сообщений: 83
Провел на форуме: 181715
Репутация:
50
|
|
Всё получилось спасибо, но как вывести в мемо код страницы, сейчас в мемо какие то иероглифы..
а так не катит?:
Код:
uses IdHttp;
...
var s:string;h:tIdHttp;
begin
h:=tIdHttp.Create(nil);
memo1.Lines.Clear;
s:=h.Get('http://antichat.ru');
memo1.Lines.Add(s);
h.Free;
...
имхо самый простой и удобный вариант на делфи
|
|
|

26.12.2009, 11:27
|
|
Познающий
Регистрация: 21.11.2009
Сообщений: 77
Провел на форуме: 2482290
Репутация:
29
|
|
Сообщение от Markus_13
а так не катит?:
Код:
uses IdHttp;
...
var s:string;h:tIdHttp;
begin
h:=tIdHttp.Create(nil);
memo1.Lines.Clear;
s:=h.Get('http://antichat.ru');
memo1.Lines.Add(s);
h.Free;
...
имхо самый простой и удобный вариант на делфи
нет, нужно на winsock
|
|
|

26.12.2009, 18:16
|
|
Познающий
Регистрация: 24.03.2009
Сообщений: 31
Провел на форуме: 195727
Репутация:
2
|
|
пмогите подалуста как мне использовать функцию
function BinToInt(Value: string): Integer;
var
i, iValueSize: Integer;
begin
Result := 0;
iValueSize := Length(Value);
for i := iValueSize downto 1 do
if Value[i] = '1' then Result := Result + (1 shl (iValueSize - i));
end;
в процедуре
procedure TForm1.Button1Click(Sender: TObject);
???!!! понимаю google.ru ответил бы на мой вопрос но вот седян он не хочет давать мне ответа ...
|
|
|

26.12.2009, 20:12
|
|
Познающий
Регистрация: 02.06.2009
Сообщений: 67
Провел на форуме: 237284
Репутация:
54
|
|
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
Button1.Caption := IntToStr(BinToInt('10001010'));
end;
|
|
|

26.12.2009, 23:56
|
|
Постоянный
Регистрация: 12.05.2009
Сообщений: 395
Провел на форуме: 4761503
Репутация:
229
|
|
Всё получилось спасибо, но как вывести в мемо код страницы, сейчас в мемо какие то иероглифы..
Какой пакет посылаешь?
|
|
|

27.12.2009, 01:13
|
|
Познающий
Регистрация: 21.11.2009
Сообщений: 77
Провел на форуме: 2482290
Репутация:
29
|
|
Сообщение от wolmer
Какой пакет посылаешь?
ну как в твоём примере только сайт и другие данные свои вставил..
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|