2012년 3월 15일 목요일

윈도우 file descriptor -> HANDLE 변환 - converting file descriptor to HANDLE

int fd = open(file_name,O_RDWR);
HANDLE hFile = (void *)_get_osfhandle(fd);
...
ReadFile();
WriteFile();
...
close(fd);

2012년 3월 2일 금요일

자기 ip 알아내기 - obtaining host ip address

struct hostent *fHost;
char fMyIpAddr[64];

void getMyIP()
{
        char buffer[1024];

if (gethostname(buffer, sizeof(buffer)) == SOCKET_ERROR) {
printf("%s gethostname error !!!\r\n", __FUNCTION__);
return;
}

fHost = gethostbyname(buffer);
if (fHost == NULL) {
printf("%s gethostbyname error !!!\r\n", __FUNCTION__);
return;
}

sprintf(fMyIpAddr, "%d.%d.%d.%d", 
((struct in_addr *)(fHost->h_addr))->S_un.S_un_b.s_b1,
((struct in_addr *)(fHost->h_addr))->S_un.S_un_b.s_b2,
((struct in_addr *)(fHost->h_addr))->S_un.S_un_b.s_b3,
((struct in_addr *)(fHost->h_addr))->S_un.S_un_b.s_b4
);

}