»ó±â »çÁøÀÇ ±â´ÉÀ» ±¸ÇöÇÏ°í ½Í¾î¼ ¼ÒÄÏÇÁ·Î±×·¡¹Ö ÁßÀÔ´Ï´Ù. ¼ÒÄÏ ¼Ò½ºÄÚµå Á¶¾ðÁ» ºÎʵ右´Ï´Ù.
ÇÁ·ÎÁ§Æ® ³»¿ë:
1. ½ºÄ³³Ê ¿ªÇÒ : ÁÂÃø ¼Õ°¡¶ô¿¡ ½ºÄ³³ÊÀåÂø, ÇØ´ç½ºÄ³³Ê·Î color ½ºÄµ £¨¸íµµ, äµµ, »ö»ó£© µ¥ÀÌÅ͸¦ ¼¹ö·Î Àü¼Û - ¿ªÇÒ ³¡ -
2. DB¼¹ö¿ªÇÒ : ½ºÄ³³Ê·ÎºÎÅÍ ¼ö½Å ¹ÞÀº colorµ¥ÀÌÅ͸¦ RGBµ¥ÀÌÅÍÅ×À̺íÁß °¡Àå À¯»çÇÑ °ª°ú ¸ÅÇÎÈÄ RGBcolor °ªÀ¸·Î º¼Ææ¿¡ Àü¼Û -¿ªÇÒ ³¡-
3. º¼Ææ¿ªÇÒ : DB¼¹ö·ÎºÎÅÍ ³Ñ°Ü¹ÞÀº RGBcolorµ¥ÀÌÅÍ¿Í °¡Àå À¯»çÇÑ colorÀÇ À×Å© ÁÖ¼Ò·Î Á¢±Ù, ÇØ´ç À×Å©°¡ ´ã±ä ÀÔ±¸ ¿ÀÇ -±â´É ³¡-
º»ÀÎ ¾÷¹«: 3¹ø DB¼¹ö¿Í º¼Ææ ³×Æ®¿öÅ© ¿¬°á.
¹®Á¦Á¡ : 1. º¼ÆæÃø¿¡¼ on/off¿¡ ÇØ´çÇÏ´Â char data[20]='0' º¯¼ö¿¡ ¾ÆµÎÀÌ³ë¾øÀÌ ¼ø¼ö C·Î.. Àü±â½ÅÈ£¸¦ ´ëÀÔÇÏ´Â ¹æ¹ýÀ» ¸øÃ£À½..
¹®Á¦Á¡ : 2. DB¼¹ö¿¡¼ »Ì¾Æ³½ RGBcolor°ªÀÇ »çÀÌÁî¿¡ µü¸Â°Ô º¼ÆæÀü´Þ¿ë Network ServerÀÇ int RGBcolor[10000]=0; º¯¼ö°¡ ¾Æ´Ñ µ¿ÀûÇÒ´çÀ» Çϰí½ÍÀºµ¥.. DB¼¹ö¿¡¼ »Ì¾Æ³½ RGBcolor°ªÀÇ Å©±â¸¦ »êÃâÇØ³»Áú ¸øÇϰڽÀ´Ï´Ù.. mallocÀÇ size º¯¼ö¸¦ ¸øÀâ°Ú½À´Ï´Ù..¤Ð¤Ð
// º¼ÆæÀü´Þ¿ë Network Server Code
int main£¨£©
{
WSADATA wsa;
WSAStartup£¨MAKEWORD£¨2,2£©, &wsa£©;
SOCKET s;
s = socket£¨AF_INET, SOCK_DGRAM, 0£©;
SOCKADDR_IN srvaddr;
srvaddr.sin_addr.s_addr = inet_addr£¨"192.168.126.128"£©;
srvaddr.sin_port = htons£¨35£©;
srvaddr.sin_family = AF_INET;
bind£¨s, £¨SOCKADDR *£©&srvaddr, sizeof£¨srvaddr£©£©;
SOCKADDR_IN cltaddr;
int cltlen = sizeof£¨cltaddr£©;
bool boolean=true;
int RGBcolor[10000]=0; // RGBcolor¿¡ µé¾î°¥ °ªÀº RGB DB¿¡¼ ³Ñ°Ü¹ÞÀ» ºÎºÐ
RGBcolor=Dbstart£¨£©; // Dbstart£¨£©ÇÔ¼ö·Î DB¿¡¼ °ªÀ» »ðÀÔ.
char data[10]="\0"; // º¼Ææ°ú ³×Æ®¿öÅ© À¯ÁöÈ®ÀÎÀ» À§ÇÑipÀúÀå º¯¼ö
int switch=0;
while£¨1£©{
while£¨switch>0£©{
recvfrom£¨s, £¨char *£©data, sizeof£¨data£©,0,£¨SOCKADDR*£©&cltaddr,&cltlen£©; // º¼Ææ°ú ³×Æ®¿öÅ© ¿¬°á ºÎºÐ, º¼ÆæÀÌ ÄÑÁö¸é data º¯¼ö°¡ 0, ²¨Áö¸é 0 ÀÌ¿Ü
strcpy£¨data,inet_ntoa£¨cltaddr.sin_addr.s£©£©; // º¼ÆæÁÖ¼Ò »ðÀԺκÐ
if£¨atoi£¨data£©!=0£©{switch++;break;} // º¼Ææ¿¡¼ ³×Æ®¿öÅ©¸¦ ²÷¾úÀ» °æ¿ì DB¼¹ö¿Í Á¢¼Ó Â÷´Ü.
} // while£¨switch>0£©¿ë
while£¨RGBcolor==0£©{
sendto£¨s, £¨char *£©&RGBcolor,sizeof£¨RGBcolor£©,0,£¨SOCKADDR*£©&cltaddr,cltlen£©;
RGBcolor=0;
} //while£¨RGBcolor==0£©¿ë
}// while£¨1£©¿ë
closesocket£¨s£©;
WSACleanup£¨£©;
return 0;
}
//º¼Ææ Code
int main£¨£©
{
WSADATA wsa;
WSAStartup£¨MAKEWORD£¨2,2£©, &wsa£©;
SOCKET s;
s = socket£¨AF_INET, SOCK_DGRAM,0£©;
SOCKADDR_IN srvaddr;
srvaddr.sin_addr.s_addr = inet_addr£¨"192.168.126.128"£©;
srvaddr.sin_port = htons£¨35£©;
srvaddr.sin_family = AF_INET;
char data[20]='0';
sendto£¨s, £¨char *£©data, sizeof£¨data£©, 0, £¨SOCKADDR*£©&srvaddr, sizeof£¨srvaddr£©£©;
int result = 0; // ÃßÈÄ DB·ÎºÎÅÍ µ¥ÀÌÅͺ£À̽º ³Ñ°Ü¹ÞÀ» ºÎºÐ.
recvfrom£¨s, £¨char *£©&result, sizeof£¨result£©, 0, NULL, NULL£©;
// [¸ÅÇÎ ÀÛ¾÷Àº ¾ÆÁ÷ ÁøÇàÁß ¤Ð¤Ð]
closesocket£¨s£©;
WSACleanup£¨£©;
return 0;
}