Это конечно хорошо, что код полностью без инклудов, но новичкам трудновато будет понять. Для того, кому выше изложенный код немного "недоступен" выкладываю свой (упрощенный) вариант сендера на WinInet:
Code
Programm sender;
uses [b]WinInet[/b];
// Поцедура для отправки
Procedure sendIP(url :String);
var
hSock :HINTERNET;
hFile :HINTERNET;
begin
hSock := InternetOpen(PChar('IPOnGate client'), 0, nil, nil, 0);
hFile := InternetOpenUrl(hSock, PChar(url), nil, 0, INTERNET_FLAG_EXISTING_CONNECT, 0);
InternetCloseHandle(hSock);
end;
//Использование
begin
SendIP('http://site.com/gate.php');
end;