Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

06.06.2007, 17:00
|
|
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме: 16641028
Репутация:
2371
|
|
GET,POST запросы Скажи те плз, как в делфи выполнять гет, пост запросы к сайтам.....
Покажите плз пример програмки...
Какой компонент юзать?
И т.д. и т.п.
Самый развернутый ответ получит +10 =\
|
|
|

06.06.2007, 17:24
|
|
Участник форума
Регистрация: 09.02.2004
Сообщений: 122
Провел на форуме: 1089794
Репутация:
134
|
|
Последний раз редактировалось NetMan; 06.06.2007 в 17:27..
|
|
|

06.06.2007, 17:51
|
|
Участник форума
Регистрация: 19.05.2007
Сообщений: 228
Провел на форуме: 4325663
Репутация:
240
|
|
Нужен компонент IdHTTP с вкладки Indy Clients например следующий код
Код:
procedure TForm1.Button1Click(Sender: TObject);
var sl : TStringList;
begin
sl := TStringList.Create;
sl.Add('id=111');
sl.Add('pass=***');
Memo1.Lines.Text:=IdHTTP1.Post('http://www.ya.ru',sl);
end;
выведет в мемо html код страницы, полученной пост запросом.
Если нужно сделать get запрос, используй метод IdHTTP1.Get
|
|
|

06.06.2007, 18:47
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме: 3288241
Репутация:
3349
|
|
А я не парясь мучаюсь вот так вот:
Код:
procedure timeouts(wnd:hwnd;uMsg:UINT;id:UINT;dwtime:dword);stdcall;
begin
tout:=true;
closesocket(socket_id);
end;
function send_packs(ip:string; port:word; send_buf:string; var recv_buf:string):integer;
var
SockAddrIn: TSockAddrIn;
tmp_buf:array[1..1024] of char;
len:longint;
begin
result:=-10;
socket_id:=socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
if socket_id=WINDOWS.INVALID_HANDLE_VALUE then exit;
SockAddrIn.sin_family := AF_INET;
SockAddrIn.sin_port := htons(port);
SockAddrIn.sin_addr.s_addr := inet_addr(Pansichar(ip));
result:=-20;
if Connect(socket_id, @SockAddrIn, SizeOf(SockAddrIn))<>0 then exit;
tout:=false;
windows.SetTimer(form1.Handle,1,30000,@timeouts);
send(socket_id,send_buf[1],length(send_buf),0);
recv_buf:='';
repeat
len:=recv(socket_id,tmp_buf,1024,0);
recv_buf:=recv_buf+copy(tmp_buf,1,len);
until len<=0;
killtimer(form1.Handle,1);
result:=-30;
if tout=true then exit;
result:=length(recv_buf);
closesocket(socket_id);
end;
Чисто делал код под многопаточную работу через прокси с использованием TIMEOUT
примет юзанья:
Код:
buf_send:=
'GET http://xz.org/? HTTP/1.0'#13#10+
'Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*'#13#10+
'Referer: http://xz.ru/'#13#10+
'Accept-Language: ru-ru'#13#10+
'Proxy-Connection: Keep-Alive'#13#10+
'User-Agent: Mozilla/5.0 (compatible; MSIE 6.0; SV1; MRA 4.8 (build 01705))'#13#10+
'Host: xz.org'#13#10#13#10;
case send_packs(proxy[x].ip,proxy[x].port,buf_send,buf_recv) of
-10:begin
form1.memo2.Lines.Add('Ошибка создания сокета');
goto m1;
end;
-20:begin
form1.memo2.Lines.Add(proxy[x].ip+' > дохлый');
goto m1;
end;
-30:begin
form1.memo2.Lines.Add(proxy[x].ip+' > TIME OUT');
goto m1;
end;
0:begin
form1.Memo2.Lines.Add(proxy[x].ip+' > Ошибка прокси');
goto m1;
end;
end;
НУ и как всегд не надо забывать перед выполнением этого делать:
Код:
if WSAStartup($202, WSAData)=-1 then
begin
memo2.Lines.Add('Ошибка WSAStarup');
exit;
end;
Вся система держится на базе winsock2.
Или есть вот пример юзанья через WinInet с использованием SSL. Хотя его можно отрубить!
Код:
function zapros(login,pass,proxy_ip:string;proxy_port:word):string;
var
h_open:HINTERNET;
h_connect:HINTERNET;
h_request:HINTERNET;
mas:array of char;
s,outs:string;
l:integer;
begin
result:='- InternetOpen';
if proxy_ip<>'' then
h_open:=InternetOpen('Mozilla/5.0 (compatible; MSIE 6.0; SV1; MRA 4.8 (build 01705))',INTERNET_OPEN_TYPE_PROXY,Pansichar(proxy_ip+':'+inttostr(proxy_port)),nil,0)
else
h_open:=InternetOpen('Mozilla/5.0 (compatible; MSIE 6.0; SV1; MRA 4.8 (build 01705))',INTERNET_OPEN_TYPE_DIRECT,nil,nil,0);
if h_open=nil then exit;
result:='- InternetConnect';
h_connect:=InternetConnect(h_open,'hz.ru',INTERNET_DEFAULT_HTTPS_PORT,nil,nil,INTERNET_SERVICE_HTTP,0,0);
if h_connect=nil then exit;
setlength(mas,1024);
lstrcpy(Pansichar(mas),'image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/msword, application/vnd.ms-excel, application/vnd.ms-powerpoint, */*');
result:='- HttpOpenRequests';
h_request:=HttpOpenRequest(h_connect,'POST','/','HTTP/1.0','hz.ru',@mas,INTERNET_FLAG_SECURE+INTERNET_FLAG_KEEP_CONNECTION,0);
if h_request=nil then exit;
randomize;
s:='login='+login+'pass='+pass;
lstrcpy(Pansichar(mas),Pansichar(s));
HttpSendRequest(h_request,'Content-Type: application/x-www-form-urlencoded', 47,mas,length(s));
setlength(mas,1024);
outs:='';
repeat
InternetReadFile(h_request,mas,1024,cardinal(l));
s:=copy(Pchar(mas),1,l);
outs:=outs+s;
until l<=0;
result:='- PASSWORD ERROR';
if pos('Вы ввели неправильный пароль.',outs)<>0 then exit;
result:='+ ОК';
wininet.InternetCloseHandle(h_open);
end;
Последний раз редактировалось slesh; 06.06.2007 в 18:55..
|
|
|

06.06.2007, 23:06
|
|
Участник форума
Регистрация: 06.03.2007
Сообщений: 283
Провел на форуме: 1547094
Репутация:
120
|
|
Люди извеняюсь конечно за глупый вопрос, но всёже:
http://www.forum-mp3.org/DynamicSkinForm.v7.40.Full.Source.Delphi.BCB.ccrun .446521.rar
Люди потскажите ктонебуть как установить этот кампонент? если можно поподробние на Delphi 2006.
Вить там файла .bpl та нету.

|
|
|

06.06.2007, 23:16
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме: 3288241
Репутация:
3349
|
|
это компонент в исходниках. поэтому его ставить нужно через DPK файлы.
Открываешь в дельфе DPK файл соответствующий твоей версии дельфы.
Появится окно установки пакета. Там нажмешь на кнопку компилировать.
А потом на кнопку Установить. После чего появится messagebox со списком установленых компонентов.
Советую прежде чем это сделать, скопировать все фалы находящиеся в архиве в папке ssdsf740 в папку Delphi\Lib и из неё уже устанавливать. Т.к. если установить из временной папки, то потом частенько появляются глюки.
Последний раз редактировалось slesh; 06.06.2007 в 23:18..
|
|
|

06.06.2007, 23:59
|
|
Участник форума
Регистрация: 06.03.2007
Сообщений: 283
Провел на форуме: 1547094
Репутация:
120
|
|
slesh уменя некакое окно установки невышло, просто какбы показан код:
package skinpackD2006;
{$R *.res}
{$R 'spreg.dcr'}
{$ALIGN 8}
{$ASSERTIONS ON}
{$BOOLEVAL OFF}
{$DEBUGINFO ON}
{$EXTENDEDSYNTAX ON}
{$IMPORTEDDATA ON}
{$IOCHECKS ON}
{$LOCALSYMBOLS ON}
{$LONGSTRINGS ON}
{$OPENSTRINGS ON}
{$OPTIMIZATION ON}
{$OVERFLOWCHECKS OFF}
{$RANGECHECKS OFF}
{$REFERENCEINFO ON}
{$SAFEDIVIDE OFF}
{$STACKFRAMES OFF}
{$TYPEDADDRESS OFF}
{$VARSTRINGCHECKS ON}
{$WRITEABLECONST OFF}
{$MINENUMSIZE 1}
{$IMAGEBASE $400000}
{$IMPLICITBUILD OFF}
requires
rtl,
vcl,
vcljpg,
designide,
vclactnband,
vclx;
contains
SPUtils in 'SPUtils.pas',
SkinBoxCtrls in 'SkinBoxCtrls.pas',
SkinCtrls in 'SkinCtrls.pas',
SkinData in 'SkinData.pas',
SkinGrids in 'SkinGrids.pas',
SkinHint in 'SkinHint.pas',
SkinMenus in 'SkinMenus.pas',
SkinTabs in 'SkinTabs.pas',
SPEffBmp in 'SPEffBmp.pas',
spMessages in 'spMessages.pas',
spreg in 'spreg.pas',
spSkinUnZip in 'spSkinUnZip.pas',
spSkinZip in 'spSkinZip.pas',
spTrayIcon in 'spTrayIcon.pas',
DynamicSkinForm in 'DynamicSkinForm.pas',
spSkinShellCtrls in 'spSkinShellCtrls.pas',
spfilectrl in 'spfilectrl.pas',
spzlib in 'spzlib.pas',
spNBPagesEditor in 'spNBPagesEditor.pas' {spNBPagesForm},
spcalendar in 'spcalendar.pas',
spColorCtrls in 'spColorCtrls.pas',
spDialogs in 'spDialogs.pas',
spzlibcompress in 'spzlibcompress.pas',
spconst in 'spconst.pas',
spRootEdit in 'spRootEdit.pas' {spRootPathEditDlg},
SkinPrinter in 'SkinPrinter.pas',
spbuttongroup in 'spbuttongroup.pas',
spcategorybuttons in 'spcategorybuttons.pas';
end.
|
|
|

07.06.2007, 02:46
|
|
Новичок
Регистрация: 05.05.2005
Сообщений: 26
Провел на форуме: 64251
Репутация:
11
|
|
не знаю может уже задавали такой вопрос...но все же...где можно скачать Делфи (желательно последнюю версию)...сори если че не так...
|
|
|

07.06.2007, 03:10
|
|
Members of Antichat - Level 5
Регистрация: 04.01.2007
Сообщений: 176
Провел на форуме: 17964969
Репутация:
1362
|
|
Такой вопрос задавался тут не один раз!
Что мне дал гугл:
1) http://www.codegear.com/downloads/free/delphi
2) Delphi 2007 Lite for Win32:
http://rapidshare.com/files/26500700/Lite.rar
http://rapidshare.com/files/26501160/Lite.r00
http://rapidshare.com/files/26501592/Lite.r01
http://rapidshare.com/files/26502227/Lite.r02
http://rapidshare.com/files/26503377/Lite.r03
http://rapidshare.com/files/26508525/Lite.r04
http://rapidshare.com/files/26508806/Lite.r05
А ещё смотрим темы: 1, 2, 3.
|
|
|

07.06.2007, 08:54
|
|
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме: 3288241
Репутация:
3349
|
|
2 motorola3653 Не могу сказать как именно действовать, т.к. сам приверженец 7-й дельфы.
Если так не прокатило, то попробуй В Меню "Компонент" (если оно у тебя есть)
Выбрать пункт "Установить компонент" и там ввести имя файла пакета.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|