×

[PR]この広告は3ヶ月以上更新がないため表示されています。
ホームページを更新後24時間以内に表示されなくなります。

#include <winsock2.h>

//ソケット初期化(Ws2_32.dllの初期化)
WSAData wsa;
WSAStartUp(MAKEWORD(2,0),&wsa);//成功で0

//ローカルマシンのホスト名取得
char localhost[16];
gethostname(localhost,16);//成功で0
//ホスト名からホスト情報取得
HOSTENT *hostInfo;
hostInfo=gethsotbyname(localhost);//失敗でNULL
/*
struct hostent{
	char FAR* h_name;
	char FAR* FAR* h_aliases;
	short h_addrtype;
	short h_length;
	char FAR* FAR* h_addr_list;
} */
//IP取得
char szIP[64];
IN_ADDR inaddr=hostInfo.h_addr_list[0];
strcpy(szIP,inet_ntoa(inaddr));

//ソケットの生成
SOCKET hSKT=socket(PF_INET,SOCK_STREAM,0);

//接続
SOCKADDR_IN sockaddr;
sockaddr.sin_family=AF_INET;
sockaddr.sin_port=htons(110);//ポート設定
sockaddr.sin_addr=*(LPIN_ADDR)*hostInfo.h_addr_list;
connect(hSKT,"",);//成功したら0

//受信
char buf[256];
recv(hSKT,buf,256,0);

//送信
char msg[256];
send(hSKT,msg,strlen(msg),0);//成功したら(int of course)strlen(msg)

//通信の終了
closesocket(hSKT);
WSACleanup();