//-----------------------------------------------union Gy
{
sockaddr A;
sockaddr_in B;
};
SOCKET S;
//-----------------------------------------------void ShowError()
{
char err[512];
FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM,NULL,GetLastError(),0,err,512,NULL);
MessageBox(NULL,err,NULL,MB_OK);
}
//-----------------------------------------------void __fastcall TForm1::Button1Click(TObject *Sender)
{
Gy Trans;
WSAData D;
sockaddr_in Amy;
sockaddr A;
if(WSAStartup(MAKEWORD(2,0),&D)!=0){ShowError();return;}
Amy.sin_family=AF_INET;
Amy.sin_addr.s_addr=inet_addr("213.180.200.225");
Amy.sin_port=htons(110);
Trans.B=Amy;
A=Trans.A;
S=socket(AF_INET,SOCK_STREAM,0);
if(S==INVALID_SOCKET)ShowError();
if(!connect(S,&A,sizeof(A))==0)ShowError();
}
//-----------------------------------------------
функция gethostname и иже с ними
Использование функции gethostname() дает код ошибки -1, в хелпе пишут, что с начала надо успещно запустить WSAStartup, а с ней я не разберусь никак, она мне Access violation пишет.. как быть?
Цитата:
Originally posted by Elex
Если кто - то программировал сокеты в Builder'e..
Использование функции gethostname() дает код ошибки -1, в хелпе пишут, что с начала надо успещно запустить WSAStartup, а с ней я не разберусь никак, она мне Access violation пишет.. как быть?
Если кто - то программировал сокеты в Builder'e..
Использование функции gethostname() дает код ошибки -1, в хелпе пишут, что с начала надо успещно запустить WSAStartup, а с ней я не разберусь никак, она мне Access violation пишет.. как быть?
Код:
Вот так я использовал WSAStartup. Надеюсь поможет.