Witam,
Chciałbym napisać przesyłanie danych GET'em za pomocą Winsock w delphi lecz mam pewien problem.
Mój kod :
procedure SendData;
var
wsa : WSAData;
ErrorCode : Integer;
Gniazdo : Integer;
socket_info: sockaddr_in;
Handle : THandle;
Buffer : array[0..1024] of char;
Odebralem : array[0..1024] of char;
begin
ErrorCode := WSAStartup(MAKEWORD(2,0),wsa);
if (ErrorCode = SOCKET_ERROR) then
MessageBox(0, 'Nie mozna wystartowac gniazda', 'WinSock', MB_OK);
Gniazdo := Socket(AF_INET, SOCK_STREAM, 0);
socket_info.sin_family := AF_INET;
socket_info.sin_addr.S_addr := inet_addr(PChar('xxxxx'));
socket_info.sin_port := htons(80);
ErrorCode := connect(Gniazdo, socket_info, SizeOf(socket_info));
if (ErrorCode = SOCKET_ERROR) then
MessageBox(0, 'Nie mozna podlaczyc', 'WinSocks', MB_OK);
WSAAsyncSelect(Gniazdo,Handle,WM_USER, FD_READ or FD_CONNECT or FD_ACCEPT);
Buffer := 'GET http://adres.com/data.php?' +
'&pierwszy='+Zmienna;
send(Gniazdo, Buffer, SizeOf(Buffer), 0);
Recv(Gniazdo, Odebralem, SizeOf(Odebralem), 0);
end;
Gdy chce wysyłac dane to nie moge bo kłoci mi się z typami Strin i Array.
Buffer := 'GET http://adres.com/data.php?' +
'&pierwszy='+Zmienna;
Zmienna
to string
,a buffer to tablica char.
Gdy zmieniam w zmiennej buffer na string, wtedy jest wszystko ok,ale nie wysyła danych : /.
Mógłby mi pomóc rozwiązać problem?
Pozdrawiam