.NET
HOME > WEB > .NET
2016.10.04 / 17:58

UDS Messenger Ver 1.0.1.1, ¸Þ´º¾ó (ÀÚµ¿¾÷µ¥ÀÌÆ® Ãß°¡ ¹× ±âŸ °³¼±)

proposal
Ãßõ ¼ö 226

UDS Messenger Ver 1.0.1.1, ¸Þ´º¾ó (ÀÚµ¿¾÷µ¥ÀÌÆ® Ãß°¡ ¹× ±âŸ °³¼±)




* UDS Messenger Ver 1.0.1.1  ÇÁ·Î±×·¥ ¹× ¸Þ´º¾ó ´Ù¿î·Îµå

 

1.      UDS¸Þ½ÅÀú´Â?
 UDS¸Þ½ÅÀú´Â äÆÃ, ÆÄÀÏ Àü¼Û/°øÀ¯/¹é¾÷ÀÌ °¡´ÉÇÑ À©µµ¿ì ±â¹ÝÀÇ °¡º­¿î ¸Þ½ÅÀúÀÔ´Ï´Ù. ¼Ò±Ô¸ð ³×Æ®¿öÅ© ȯ°æ¿¡¼­ »ç¿ë°¡´É Çϵµ·Ï ¼­¹ö¿Í Ŭ¶óÀ̾ðÆ® ÇÁ·Î±×·¥À¸·Î ±¸¼ºµÇ¾î ÀÖ½À´Ï´Ù.  ±×¸®°í ´Ù¸¥ ÇÁ·Î±×·¥¿¡ Ŭ¶óÀ̾ðÆ®¸¦ Æ÷ÇÔ½ÃÄÑ È®Àå »ç¿ëÇÒ ¼ö Àִ DLL Å¬¶óÀ̾ðÆ®¸¦ Á¦°øÇÏ°í ÀÖ½À´Ï´Ù. 1.?.?.? ¹öÀüÀº °³ÀÎ, ±â¾÷, Á¤ºÎ ±â°ü ¹× ±âŸ Á¶Á÷¿¡¼­ »ç¿ë °¡´ÉÇÑ ¹«·á ¹öÀüÀ̸ç, È¸»ç³ª ¾î¶² Á¶Á÷¿¡ ¼ÓÇØ ÀÖÁö ¾Ê´Â °³ÀÎÀûÀ¸·Î ¸¸µç ÇÁ·Î±×·¥ À̱⠶§¹®¿¡ ¸¹Àº ±â´ÉÀ̳ª È­·ÁÇÑ ±×·¡ÇÈÀº Á¦°øÇÏÁö ¸øÇÕ´Ï´Ù. ÇÏÁö¸¸ ²ÙÁØÈ÷ ¾÷µ¥ÀÌÆ® ÇÒ ¿¹Á¤ÀÔ´Ï´Ù. ÇöÀç ¹öÀüÀº 1.0.1.1ÀÔ´Ï´Ù. »ç¿ëÇØ Áּż­ °¨»çÇÕ´Ï´Ù.

2.      ÁÖ¿ä±â´É
¢¹ Ã¤ÆÃ: 1´ë1 Ã¤ÆÃ, ±×·ìäÆÃ
¢¹ ÆÄÀÏÀü¼Û: ¿©·¯ ÆÄÀÏÀ» ÇѲ¨¹ø¿¡ ¿©·¯ ¸í¿¡°Ô µ¿½Ã Àü¼Û °¡´É
¢¹ ÆÄÀÏ°øÀ¯: °³ÀΠPC ÆÄÀÏÀ» ½±°Ô °øÀ¯(±ÇÇÑ ¼³Á¤ °¡´É)
¢¹ PCÀÚ·á¹é¾÷: °£´ÜÇÑ ¼³Á¤À¸·Î PCÀڷḦ ¼­¹ö ¶Ç´Â ÁöÁ¤ÇÑ Æú´õ¿¡ ¹é¾÷
              (º¯°æ/»èÁ¦ ÀÚ·á ÀÚµ¿ º¸°ü)
¢¹ ¿ø°ÝÁ¦¾î: Ŭ¶óÀ̾ðÆ®°£ ¿ø°ÝÁ¦¾î

       ¢¹ Ŭ¶óÀ̾ðÆ® ÀÚµ¿¾÷µ¥ÀÌÆ®
¢¹ ÇöÀç °³¹ßÁßÀÎ ±â´É: ±â´ÉÇâ»ó ¹× ¾Èµå·ÎÀ̵å Ŭ¶óÀ̾ðÆ®

3.     ¸Þ½ÅÀú ±¸¼ºÆÄÀÏ

l  ±âº»ÇÁ·Î±×·¥
: ¼­¹ö¿Í Ŭ¶óÀ̾ðÆ® °¢°¢ 1°³ÀÇ ½ÇÇàÆÄÀÏ·Î ±¸¼ºµÇ¸ç ¼³Ä¡ ÇÁ·Î±×·¥ ÇÊ¿ä ¾ø½À´Ï´Ù.
UDSServer.exe : ¸Þ½ÅÀú ¼­¹ö ÇÁ·Î±×·¥ ½ÇÇàÆÄÀÏ
UDSClient.exe : ¸Þ½ÅÀú Ŭ¶óÀ̾ðÆ® ÇÁ·Î±×·¥ ½ÇÇàÆÄÀÏ
UDSServer.KOR : ¼­¹ö¿ë Çѱ¹¾î ¾ð¾îÆÄÀÏ
  (¼­¹ö ½ÇÇàÆÄÀÏ°ú µ¿ÀÏÇÑ Æú´õ¿¡ ³Ö¾î¼­ »ç¿ëÇÏ¸é µË´Ï´Ù. Çѱ¹¾î WindowsÀÇ °æ¿ì ÀÚµ¿À¸·Î Çѱ¹¾î·Î »ç¿ë °¡´ÉÇÕ´Ï´Ù.)
UDSClient.KOR : Å¬¶óÀ̾ðÆ® Çѱ¹¾î ¾ð¾îÆÄÀÏ
  (Ŭ¶óÀ̾ðÆ® ½ÇÇàÆÄÀÏ°ú µ¿ÀÏÇÑ Æú´õ¿¡ º¹»çÇÏ¿© »ç¿ë)

      UDSUpdate.exe: Ŭ¶óÀ̾ðÆ® ÀÚµ¿¾÷µ¥ÀÌÆ®¿ë ½ÇÇàÆÄÀÏ(¼­¹öÆÄÀÏ°ú µ¿ÀÏÇÑ Æú´õ¿¡ À§Ä¡)


¡Ø ¼­¹ö, Å¬¶óÀ̾ðÆ®, ¾ð¾îÆÄÀÏÀº µ¿ÀϹöÀüÀ» »ç¿ëÇØ¾ß ÇÁ·Î±×·¥ÀÌ Á¤»ó µ¿ÀÛÇÕ´Ï´Ù.

¡Ø ÇÁ·Î±×·¥ Ư¼º»ó ¼³Ä¡ÇÁ·Î±×·¥ÀÌ ÇÊ¿ä ¾øÀ¸¸ç ¼­¹ö/Ŭ¶óÀ̾ðÆ® ½ÇÇàÆÄÀÏÀ» Àû´çÇÑ Æú´õ¿¡ º¹»ç ÈÄ ½ÇÇàÇÏ¸é µË´Ï´Ù.


l  È¯°æ¼³Á¤ ÆÄÀÏ
ÇÁ·Î±×·¥À» ½ÇÇà ÈÄ È¯°æ¼³Á¤, ÇÁ·Î±×·¥ ÀÚ·á(»ç¿ëÀÚ, »ç¿ë±×·ì)°¡ HDD¿¡ ÀúÀåµË´Ï´Ù.
¢¹ ÀÚ·áÀúÀå °æ·Î
  Windows XP: C:\Documents and Settings\»ç¿ëÀÚID\Application Data\UDS
  Windows7: C:\Users(or »ç¿ëÀÚ)\»ç¿ëÀÚID\AppData\Roaming\UDS
  Windows8: C:\Users\»ç¿ëÀÚID\AppData\Roaming\UDS

¢¹ ¼­¹öÆÄÀÏ ¼³¸í
  User?.dat: »ç¿ëÀÚ ÀÚ·á
  Group.dat: »ç¿ëÀÚ ±×·ì ÀÚ·á
  SConfig.kdu: ¼­¹öȯ°æ ÀúÀåÆÄÀÏ
  SharedInfo_ID.kdu: »ç¿ëÀÚ PC°øÀ¯Á¤º¸ ÆÄÀÏ
  BackupInfo_hj.kdu: »ç¿ëÀÚ PC¹é¾÷Á¤º¸ ÆÄÀÏ

        Update.dat: ÀÚµ¿¾÷µ¥ÀÌÆ® ÀÚ·á

¢¹ Å¬¶óÀ̾ðÆ® ÆÄÀÏ ¼³¸í
  Config.kdu: Å¬¶óÀ̾ðÆ® ȯ°æ¼³Á¤ ÀúÀåÆÄÀÏ

¡Ø ¼­¹ö/Ŭ¶óÀ̾ðÆ® PC°¡ º¯°æµÇ´Â °æ¿ì À§ÀÇ ÀúÀåµÈ ÆÄÀÏÀ» º¹»çÇÏ¿© µ¿ÀÏÇÑ »óÅ·ΠÇÁ·Î±×·¥ »ç¿ëÀÌ °¡´ÉÇÕ´Ï´Ù.


l  È®ÀåDLL
UDSClient.DLL : Å¸ ÇÁ·Î±×·¥¿¡ ¸Þ½ÅÀú Ŭ¶óÀ̾ðÆ®¸¦ ¿¬µ¿ÇÏ¿© »ç¿ë°¡´É ÇÑ ¸Þ½ÅÀú Ŭ¶óÀ̾ðÆ® È®Àå DLLÆÄÀÏÀÔ´Ï´Ù.


l  ±âŸÆÄÀÏ
ConnConf.kdu: ¼­¹öÁ¢¼Ó Á¤º¸ ÀÚµ¿¼³Á¤ ÆÄÀÏ
 Å¬¶óÀ̾ðÆ® ½ÇÇàÆÄÀÏ°ú °°ÀÌ ¹èÆ÷ÇÏ¸é ¼­¹öȯ°æÀÌ ÀÚµ¿À¸·Î Ŭ¶óÀ̾ðÆ®¿¡ ¼³Á¤µË´Ï´Ù. ´Ù¼öÀÇ PC¿¡ Ŭ¶óÀ̾ðÆ® ÇÁ·Î±×·¥¼³Ä¡°¡ ÇÊ¿äÇÑ °æ¿ì ÇØ´çÆÄÀÏ°ú °°ÀÌ ¹èÆ÷ÇÏ¿© ¼­¹ö IP, Port¼³Á¤¾øÀÌ ¹Ù·Î »ç¿ë °¡´ÉÇÕ´Ï´Ù.
¼­¹öÀÇ Setting(¼³Á¤)-¼­¹öÁ¢¼ÓÆÄÀÏ »ý¼º ±â´É¿¡¼­ »ý¼ºµË´Ï´Ù.



4.     ¼­¹ö ÇÁ·Î±×·¥ »ç¿ë¹æ¹ý

4.1       ¼­¹ö½ÇÇà ¹× Á¾·á
1) UDSServer.exe ½ÇÇàÆÄÀÏ·Î ½ÇÇà
2) Ãʱâ½ÇÇàÀÇ °æ¿ì À©µµ¿ì º¸¾È °æ°í ¸Þ¼¼Áö°¡ Ãâ·ÂµÇ¸ç ¾×¼¼½º Çã¿ë¹öÆ°À» Ŭ¸¯ÇÕ´Ï´Ù.
      

             

3) ¼­¹öÁ¾·á ¹× È°¼ºÈ­
  : Æ®·¹ÀÌ ¾ÆÀÌÄÜ¿¡¼­ ¸¶¿ì½º ¿À¸¥ÂÊ ±â´ÉÀ» È°¿ëÇÕ´Ï´Ù.

          

          ¼­¹ö È°¼ºÈ­(Open Server): ¼­¹öÈ­¸é º¸±â
¼­¹ö Á¾·á(Close Server): ¼­¹ö ÇÁ·Î±×·¥ Á¾·á

4.2       ¼­¹ö ±¸¼º³»¿ë ¿ä¾à
1) Á¢¼Ó»óÅÂ(Connection status)
   : µî·ÏµÈ ±×·ì/»ç¿ëÀÚÀÇ Æ®¸®ÇüÅÂÀÇ ¸®½ºÆ®, »ç¿ëÀÚÀÇ Á¢¼Ó»óÅ ȮÀΰ¡´É
2) ±×·ì°ü¸®(Group Management)
   : »ç¿ëÀÚ ±×·ìÀ» Ãß°¡, ¼öÁ¤, »èÁ¦
3) »ç¿ëÀÚ°ü¸®(User Management)
   : »ç¿ëÀÚ Ãß°¡, ¼öÁ¤, »èÁ¦ ¹× ±×·ì¿¬°á
4) ¸Þ½ÃÁö Àü¼Û(Send message)
   : »ç¿ëÀÚ¿¡°Ô ÀÔ·ÂÇÑ ¸Þ½ÃÁö Àü¼Û(Á¢¼Ó»óÅÂ, »ç¿ëÀÚ°ü¸®¿¡¼­ ¼±ÅÃµÈ »ç¿ëÀÚ ¶Ç´Â Àüü)
5) ¼³Á¤(Setting)
   : ¼­¹ö Port, ¹é¾÷Æú´õ ¼³Á¤µîÀÇ ¼­¹öȯ°æ ¼³Á¤
6) ¿ÜºÎDB »ç¿ëÀÚ Ãß°¡(External DB user added)
  : ¼³Á¤µÈ ODBC¸¦ ÅëÇؼ­ ¿ÜºÎ DBÀÇ »ç¿ëÀÚ/±×·ì ÀڷḦ Ãß°¡

           7) Ŭ¶óÀ̾ðÆ® ¾÷µ¥ÀÌÆ®(Client Update)

             : Ŭ¶óÀ̾ðÆ® ÇÁ·Î±×·¥ ÀÚµ¿¾÷µ¥ÀÌÆ®¸¦ À§ÇÑ ÆÄÀÏ/Æú´õ ÀÚ·á ¸®½ºÆ® °ü¸®

           8) UDS Á¤º¸(About)

             : ÇÁ·Î±×·¥ Á¤º¸, °³¹ßÀÚ E-Mail, ºí·¯±×

l  ¼­¹öȯ°æ ¼³Á¤

     


¢¹ ¼­¹öÆ÷Æ®(Server Port)
   : ¼­¹ö ¼­ºñ½º Æ÷Æ®¸¦ ÁöÁ¤ÇÕ´Ï´Ù. ±âº» Æ÷Æ®´Â 7000À¸·Î ÁöÁ¤µÇ¾î ÀÖÀ¸¸ç Æ÷Æ® º¯°æÀº ¹Ýµå½Ã ÀúÀå ÈÄ ÇÁ·Î±×·¥À» Àç½ÃÀÛ ÇØ¾ß Àû¿ëµË´Ï´Ù.
¢¹ Client °èÁ¤µî·ÏÀ» Çã¿ë(Allow Client Account registration)
   : Å¬¶óÀ̾ðÆ® ÇÁ·Î±×·¥¿¡¼­ ½Å±Ô °èÁ¤µî·ÏÀÌ °¡´ÉÇϵµ·Ï Çã¿ë ¶Ç´Â ¸·½À´Ï´Ù.
¢¹ ¹é¾÷ ÀúÀå Æú´õ(Backup storage)
   : Å¬¶óÀ̾ðÆ®¿¡¼­ ÆÄÀϹé¾÷ ±â´ÉÀ» ¼­¹ö·Î ¼³Á¤ÇÒ °æ¿ì ¹é¾÷ÆÄÀÏÀÌ ÀúÀåµÉ Æú´õ¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
¢¹ ÀúÀå(Save)¹öÆ°
   :  Æ÷Æ®µîÀÇ À§ÀÇ ¼³Á¤µÈ ¼­¹öȯ°æ Á¤º¸¸¦ ÀúÀåÇÕ´Ï´Ù.( SConfig.kdu ÆÄÀÏ·Î ÀúÀå)
¢¹ ¼­¹ö Á¢¼ÓÁ¤º¸ ÆÄÀÏ »ý¼º(Server connection information file creation)
   : Å¬¸®À̾ðÆ® ¼­¹ö Á¢¼ÓÁ¤º¸ ÆÄÀÏÀ» »ý¼ºÇÕ´Ï´Ù.(ConnConf.kdu)
 Å¬¶óÀ̾ðÆ® ½ÇÇàÆÄÀÏ°ú °°ÀÌ ¹èÆ÷ÇÏ¸é ¼­¹öȯ°æÀÌ ÀÚµ¿À¸·Î Ŭ¶óÀ̾ðÆ®¿¡ ¼³Á¤µË´Ï´Ù. ´Ù¼öÀÇ PC¿¡ Ŭ¶óÀ̾ðÆ® ÇÁ·Î±×·¥¼³Ä¡°¡ ÇÊ¿äÇÑ °æ¿ì ÇØ´çÆÄÀÏ°ú °°ÀÌ ¹èÆ÷ÇÏ¿© ¼­¹ö IP, Port¼³Á¤¾øÀÌ ¹Ù·Î »ç¿ë °¡´ÉÇÕ´Ï´Ù.
 

4.3       »ç¿ëÀÚ ±×·ìÃß°¡

          

         : »ç¿ëÀÚ ±×·ìÀ» Ãß°¡, ¼öÁ¤, »èÁ¦ÇÕ´Ï´Ù.
¢¹ Ãß°¡(Append)
  : ±×·ìÄÚµå(Code), ±×·ì¸í(Name)À» ÀÔ·Â ÈÄ Ãß°¡(Append)¹öÆ°À» Ŭ¸¯ÇÕ´Ï´Ù. ±×·ìÄÚµå´Â ±âÁ¸ÄÚ¿Í Áߺ¹µÇÁö ¾Êµµ·Ï ÀÔ·ÂÇÕ´Ï´Ù.
¢¹ »èÁ¦(Delete)
  : »èÁ¦ÇÒ ±×·ìÀ» ¸®½ºÆ®¿¡¼­ ¼±Åà ÈÄ »èÁ¦(Delete)¹öÆ°À» Ŭ¸¯ÇÏ¿© »èÁ¦ÇÕ´Ï´Ù.
¢¹ À§Ä¡À̵¿
  ±×·ì Æ®¸® ¸®½ºÆ®¿¡¼­ À̵¿À» ¿øÇÏ´Â ±×·ìÀ» ¼±ÅÃÇÏ¿© ¸¶¿ì½º µå·¡±× & µå¶øÇÏ¿© À̵¿ÇÕ´Ï´Ù.


4.4       »ç¿ëÀÚ °ü¸®

          


: »ç¿ëÀÚ °ü¸®(User Management)¿¡¼­ »ç¿ëÀÚ Ãß°¡, ¼öÁ¤, »èÁ¦ ¹× »ç¿ëÀÚ±×·ìÀ» ¿¬°á¼³Á¤ °ü¸®ÇÕ´Ï´Ù.
¢¹ Ãß°¡(Append)
   : Ãß°¡(Append)¹öÆ°À» Ŭ¸¯ ÈÄ »ç¿ëÀÚ ¸®½ºÆ®¿¡¼­ Ãß°¡µÈ ºóÁÙ¿¡ »ç¿ëÀÚ Á¤º¸(ID, Name, Æнº¿öµå)¸¦ ÀÔ·ÂÇÕ´Ï´Ù. 
¢¹ ¼öÁ¤
   : »ç¿ëÀÚ¸®½ºÆ®¿¡¼­ ¼öÁ¤ÇÒ »ç¿ëÀÚ¸¦ ¼±Åà ÈÄ Á÷Á¢ ¼öÁ¤ÇϸéµË´Ï´Ù.
¢¹ »èÁ¦(Delete)
   : »èÁ¦ÇÒ »ç¿ëÀÚ¸¦ ¼±Åà ÈÄ »èÁ¦(Delete) ¹öÆ°À» Ŭ¸¯ÇÏ¿© »èÁ¦ÇÕ´Ï´Ù.
¢¹ ±×·ì¼³Á¤(Grpup setting)
   : ±×·ìÀ» ¼³Á¤ÇÒ »ç¿ëÀÚ¸¦ ¼±Åà ÈÄ ±×·ì¼³Á¤(Grpup setting) ¹öÆ°À» Ŭ¸¯ÇÏ¸é ±×·ì¸®½ºÆ® Æ˾÷È­¸éÀÌ ³ªÅ¸³³´Ï´Ù. ¼³Á¤ÇÒ ±×·ìÀ» ¼±ÅÃÇÏ¿© ±×·ìÀ» ¼³Á¤ÇÕ´Ï´Ù.
¢¹ ·Î±×¾Æ¿ô(Logout)
   : Á¢¼Ó ÁßÀÎ »ç¿ëÀÚ¸¦ ¼±ÅÃÇϸé ÇØ´ç ¹öÆ°ÀÌ È°¼ºÈ­ µÇ°í ¼±ÅÃÇÑ »ç¿ëÀÚ¸¦ ·Î±×¾Æ¿ô ÇÒ¼ö ÀÖ½À´Ï´Ù.
¢¹ ClientÁ¾·á(Client close)
   : Á¢¼Ó ÁßÀÎ »ç¿ëÀÚ¸¦ ¼±ÅÃÇϸé ÇØ´ç ¹öÆ°ÀÌ È°¼ºÈ­ µÇ°í ¼±ÅÃÇÑ »ç¿ëÀÚÀÇ Å¬¶óÀ̾ðÆ® ÇÁ·Î±×·¥À» Á¾·á ÇÒ ¼ö ÀÖ½À´Ï´Ù.

4.5       ¿ÜºÎDB »ç¿ëÀÚ Ãß°¡(External DB user added)
: ODBC¸¦ ÀÌ¿ëÇؼ­ ¿ÜºÎ DB Table·ÎºÎÅÍ ÀڷḦ QueryÇÏ¿© ´ë·®ÀÇ »ç¿ë/»ç¿ëÀÚ±×·ìÀ» ½±°Ô Ãß°¡ ÇÒ¼ö ÀÖ½À´Ï´Ù.

         


         1) WindowsÀÇ ODBC µ¥ÀÌÅÍ ¿øº» °ü¸®ÀÚ ÇÁ·Î±×·¥¿¡¼­ ¼³Á¤ÇÑ ODBC¸µÅ© Á¤º¸¸¦ ODBC ¿¬°á(ODBC Connection)¿¡ À§ ±×¸²°ú °°ÀÌ ±â·ÏÇÕ´Ï´Ù.
2) 1. ¿¬°áÈ®ÀÎ(Checking the connection) ¹öÆ°À» Ŭ¸¯ÇÏ¿© DBÁ¢¼ÓÀ» È®ÀÎÇÕ´Ï´Ù.
3) ¿¬°áµÈ DB Table¿¡ ¸Â´Â Äõ¸®¸¦ »ùÇðú °°ÀÌ ÀÔ·ÂÇÏ¿© 2. Äõ¸®½ÇÇà(Query execution) ¹öÆ°ÀÏ Å¬¸¯ÇÏ¿© Äõ¸®¸¦ ½ÇÇàÇÕ´Ï´Ù. (Äõ¸® Ä÷³ Ç׸ñÀº ¹Ýµå½Ã ±×¸²°ú °°ÀÌ ÁöÁ¤µÇ¾î¾ß ÇÕ´Ï´Ù.)
3) »ç¿ëÀÚ, ±×·ì Ãß°¡(Users, Goups Add)¹öÆ°À» Ŭ¸¯ÇÏ¿© »ç¿ëÀÚ/±×·ì ÀڷḦ ÀÏ°ýÀÔ·ÂÇÕ´Ï´Ù.

4.6 Ŭ¶óÀ̾ðÆ® ¾÷µ¥ÀÌÆ®

        : Ŭ¶óÀ̾ðÆ® ÀÚµ¿¾÷µ¥ÀÌÆ®¸¦ À§ÇÑ Å¬¶óÀ̾ðÆ® ½ÇÇàÆÄÀÏ ¹× ±âŸ ÆÄÀÏÀ» ¼³Á¤ÇÕ´Ï´Ù.

         1) Ãß°¡(Append): ¾÷µ¥ÀÌÆ®ÇÒ ÆÄÀÏÀ» ¼±ÅÃÇÏ¿© Ãß°¡ÇÕ´Ï´Ù. 

            ¸®½ºÆ®ÀÇ ¼­¹öÆÄÀÏ(Server file) Ç׸ñ¿¡ ¾÷µ¥ÀÌÆ® ÆÄÀÏ(Æú´õ Æ÷ÇÔ)ÀÌ ÀԷµǰí,

            Å¬¶óÀ̾ðÆ® ÆÄÀÏ(Client file)Ç׸ñ¿¡ Ŭ¶óÀ̾ðÆ® ¾÷µ¥ÀÌÆ® Æú´õ ¹× ÆÄÀÏÀÌ ÀԷµ˴ϴÙ.

            %AppDir%Àº Ŭ¶óÀ̾ðÆ® ÇÁ·Î±×·¥ ½ÇÇà Æú´õ¸¦ ÀǹÌÇÕ´Ï´Ù.

         2) »èÁ¦(Delete): ¼±ÅÃÇÑ ¾÷µ¥ÀÌÆ® ÆÄÀÏÁ¤º¸¸¦ »èÁ¦ÇÕ´Ï´Ù.

         3) ÀúÀå(Save): °ü¸®ÇÑ ¾÷µ¥ÀÌÆ® ¸®½ºÆ®¸¦ ÀúÀåÇÕ´Ï´Ù.

              (ÁÖÀÇ: ÀúÀåÇÏÁö ¾ÊÀ¸¸é ¾÷µ¥ÀÌÆ® µÇÁö ¾Ê½À´Ï´Ù.)

         4) Ŭ¶óÀ̾ðÆ® ¹öÀü(Client version): Ŭ¶óÀ̾ðÆ® ÃֽŠ¹öÀüÀ» ÀÔ·ÂÇÕ´Ï´Ù.

         5) Ŭ¶óÀ̾ðÆ® ¾÷µ¥ÀÌÆ® ½ÇÇàÆÄÀÏ: UDSUpdate.exe

            : ¾÷µ¥ÀÌÆ® ½ÇÇàÆÄÀÏÀº ¹Ýµå½Ã ¼­¹ö ½ÇÇàÆÄÀÏ(UDSServer.exe)°ú µ¿ÀÏÇÑ Æú´õ¿¡

              À§Ä¡ÇØ¾ß ÇÕ´Ï´Ù. ¾Æ·¡ ±×¸²°ú °°ÀÌ Å¬¶óÀ̾ðÆ® ÇÁ·Î±×·¥ ½ÇÇà½Ã ¼­¹ö¿¡¼­

              °ü¸®ÇÑ ¾÷µ¥ÀÌÆ® ¸®½ºÆ®¸¦ ÀÌ¿ëÇؼ­ ÀÚµ¿À¸·Î ¾÷µ¥ÀÌÆ®µË´Ï´Ù.

              



5.     Å¬¶óÀ̾ðÆ® ÇÁ·Î±×·¥ »ç¿ë¹æ¹ý

5.1       Å¬¶óÀ̾ðÆ® ½ÇÇà ¹× Á¾·á
1) UDSClient.exe ½ÇÇàÆÄÀÏ·Î ½ÇÇà

             


2) ¼­¹öÁ¢¼Ó Á¤º¸ ¼ÂÆÃ
  ÇÏ´Ü ¾Æ·¡ÂÊÀÇ ¼³Á¤ ¹öÆ°À» Ŭ¸¯ÇÏ¿© ¼³Á¤Á¤º¸ âÀ» È£ÃâÇÕ´Ï´Ù.

            


¼­¹ö IP¿Í ¼­¹ö Æ÷Æ®¸¦ ÀÔ·Â ÈÄ ÀúÀå(Save)¹öÆ°À» Ŭ¸¯ÇÏ¿© ¼­¹ö Á¢¼Óȯ°æÀ» ¼³Á¤ÇÕ´Ï´Ù.
¢¹ ÀÚµ¿·Î±×ÀÎ(Auto login) Ã¼Å©: ±âÁ¸¿¡ ÀÔ·ÂÇÑ ID/Æнº¿öµå·Î ÀÚµ¿·Î±×ÀÎ °¡´É
¢¹ ´Ù¿î·Îµå Æú´õ ÁöÁ¤À» ¹¯Áö¾Ê½À´Ï´Ù.(Do not ask me specify download folder)
  : Ã¤ÆÃâ¿¡¼­ ÆÄÀÏÀü¼Û ¼ö¶ô½Ã ´Ù¿î·Îµå Æú´õÁöÁ¤ È­¸éÀÌ Ãâ·ÂµÇÁö ¾Ê½À´Ï´Ù. ÇØ´ç ±â´É üũ½Ã ½ÇÇàÆÄÀÏÀÌ ÀÖ´Â Æú´õ¿¡DownFileÆú´õ°¡ »ý¼ºµÇ¾î ´Ù¿î·Îµå ÆÄÀÏÀÌ ÀúÀåµË´Ï´Ù.
¢¹ ¸Þ½ÃÁö¸¦ ¼ö½ÅÇÏÁö ¾Ê½À´Ï´Ù.(Does not receive the message.)
  : Ã¼Å©½Ã ¾î¶² äÆðü·Ã ¸Þ½ÃÁöµµ ¹ÞÁö ¾Ê½À´Ï´Ù.

3) ·Î±×ÀÎ/·Î±×¾Æ¿ô

              ÇÁ·Î±×·¥ ÇÏ´ÜÀÇ ·Î±×ÀÎ/·Î±×¾Æ¿ô ¹öÆ°À» Ŭ¸¯ÇÏ¿© ·Î±×ÀÎÀ» È­¸éÀ» È£ÃâÇÕ´Ï´Ù.

              
   ·Î±×ÀÎ È­¸é¿¡¼­ »ç¿ëÀÚ ID/Æнº¿öµå¸¦ ÀÔ·ÂÇÏ¿© ·Î±×ÀÎ ÇÕ´Ï´Ù. »ç¿ëÀÚ IDÀúÀåÀ» üũÇÏ¿© ´ÙÀ½ ·Î±×ÀνàID¸¦ ÀÚµ¿ÀÔ·Â ÇÒ ¼öÀÖ½À´Ï´Ù.

4) Å¬¶óÀ̾ð Á¾·á ¹× È°¼ºÈ­

¢¹ Å¬¶óÀ̾ðÆ® ÇÁ·Î±×·¥À» È°¼ºÈ­
  : Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ¸¶¿ì½º ¿À¸¥ÂÊ Å¬¸¯ÇÏ¿© ¿­±â(Open) ¸Þ´º Ŭ¸¯
   ¡Ø Æ®·¹À̾ÆÀÌÄÜÀ» ´õºíŬ¸¯ ÇÏ¿© È°¼ºÈ­ °¡´É
¢¹ Å¬¶óÀ̾ðÆ® ÇÁ·Î±×·¥ Á¾·á
  : Æ®·¹ÀÌ ¾ÆÀÌÄÜÀ» ¸¶¿ì½º ¿À¸¥ÂÊ Å¬¸¯ÇÏ¿© ÇÁ·Î±×·¥ Á¾·á(Close) ¸Þ´º Ŭ¸¯

5.2       ´Ù¸¥ »ç¿ëÀÚ¿Í Ã¤ÆÃ
1) ·Î±×ÀÎ µÇ¾î ÀÖ´Â »ç¿ëÀÚ¸¦ ¼±ÅÃ(´ÙÁß¼±ÅýàCrtlÅ° ÀÌ¿ë)ÇÕ´Ï´Ù.
2) ÇÏ´ÜÀÇ Ã¤ÆÃ(Chatting) ¹öÆ°À» Ŭ¸¯ÇÏ¿© 1´ë1 ¹× ±×·ìäÆÃÀÌ °¡´ÉÇÕ´Ï´Ù.
  (»ç¿ëÀÚ¸¦ ´õºíŬ¸¯À¸·Îµµ äÆð¡´É, Ã¤ÆÃÀÇ ¾î¶² ³»¿ëµµ ±â·Ï¿¡ ³²Áö ¾ÊÀ½)

           

3) ¸¶¿ì½º ¿À¸¥ÂÊ Æ˾÷ ¸Þ´º ±â´É

          
¢¹ ³»¿ë Áö¿ì±â(Clearing): Ã¤Æà ÁßÀÎ ³»¿ëÀÏ Áö¿ó´Ï´Ù.
¢¹ ÆÄÀÏÀü¼Û(Send file): »ó´ë¹æ¿¡°Ô Àü¼ÛÇÒ ÆÄÀÏÀ» ¼±ÅÃÇÏ¿© Àü¼ÛÇÕ´Ï´Ù.
   (´ÙÁßÆÄÀÏ ¼±ÅÃ, Àü¼Û°¡´É)


         ¢¹ °øÀ¯ ÆÄÀÏ Á¶È¸(ID)(Shared Files Search(ID)): °³ÀÎ ÆÄÀÏ°øÀ¯ ±â´ÉÀ¸·Î »ó´ë¹æÀÌ ÆÄÀÏ°øÀ¯¸¦ ¼³Á¤ÇÏ¸é ±ÇÇÑÀÌ ÀÖ´Â »ç¿ëÀÚ°¡ Á¶È¸, °ü¸®°¡ °¡´ÉÇÕ´Ï´Ù.


          * ÁÂÃø ¸®½ºÆ®¿¡ °øÀ¯µÈ ¸ñ·Ï ¹× Æú´õ ¸®½ºÆ®°¡ Á¶È¸µÇ¸ç ¿ìÃø¸®½ºÆ®´Â ¼±ÅÃÇÑ Æú´õ¿¡ ÇØ´çÇÏ´Â ÆÄÀÏ ¸®½ºÆ®°¡ Á¶È¸µË´Ï´Ù.
* ´Ù¿î·Îµå(Download) ¹öÆ°À¸·Î ¼±ÅÃ(CtrlÅ°ÀÌ¿ë ´ÙÁß¼±ÅÃ)µÈ ÆÄÀÏÀ» ´Ù¿î·Îµå
* ¾÷·Îµå(Upload) ¹öÆ°À¸·Î ÆÄÀÏÀ» ¾÷·Îµå
* »èÁ¦(Delete) ¹öÆ°À¸·Î ¼±ÅÃÇÑ ÆÄÀÏ »èÁ¦
* ÀçÁ¶È¸(Refresh) ¹öÆ°À¸·Î ÆÄÀÏ ¸®½ºÆ®¸¦ ´Ù½Ã Á¶È¸


5.3       Å¬¶óÀ̾ðÆ® ¼³Á¤ »ó¼¼³»¿ë

        ¢¹ °èÁ¤µî·Ï(Add account)

¼­¹ö¿¡¼­ Client°èÁ¤µî·ÏÀÌ Çã°¡µÈ °æ¿ì Ŭ¶óÀ̾ðÆ®¿¡¼­ »ç¿ëÀÚ¸¦ µî·ÏÇÏ¿© »ç¿ë°¡´É ÇÕ´Ï´Ù.
* ·Î±×¾Æ¿ô »óÅÂ: ¾ÆÀ̵ð, À̸§/º°¸í ¹× Æнº¿öµå¸¦ ÀÔ·Â ÈÄ µî·ÏÇÏ¸é µË´Ï´Ù.
* ·Î±×ÀÎ »óÅÂ: À̸§/º°¸í, Æнº¿öµå¸¦ ¼öÁ¤ ÇÒ ¼ö ÀÖ½À´Ï´Ù.

¢¹ ÆÄÀÏ°øÀ¯(Shared file) ¼³Á¤

Ŭ¶óÀ̾ðÆ®°¡ ¼³Ä¡µÈ PCÀÇ Æú´õ¸¦ ÁöÁ¤ÇÏ¿© ÆÄÀÏÀ» °øÀ¯ÇÕ´Ï´Ù.
1) °øÀ¯¸í(Share Name)¸¦ ÀÔ·Â ÈÄ Ãß°¡(Add) ¹öÆ°À» Ŭ¸¯
2) °øÀ¯ Æú´õ¼±ÅÃ
3) °øÀ¯»èÁ¦: °øÀ¯¸®½ºÆ®¸¦ ¼±Åà ÈÄ »èÁ¦(Delete)¹öÆ° Ŭ¸¯
4) ÀбâÀü¿ë(Read-only), Àбâ, ¾²±â(Read and Write)¸¦ ÁöÁ¤ÇÏ¿© ±ÇÇÑ ¼³Á¤
5) Æú´õ¼±ÅÃ(Foler) ¹öÆ°À» Ŭ¸¯ÇÏ¿© °øÀ¯ Æú´õ¸¦ º¯°æ °¡´ÉÇÕ´Ï´Ù.
6) ¿À¸¥ÂÊ ÇÏ´ÜÀÇ »ç¿ëÀÚº° °øÀ¯±ÇÇÑÀ» ÁöÁ¤ÇÏ¿© ƯÁ¤ »ç¿ëÀÚ¿¡°Ô¸¸ °øÀ¯ °¡´ÉÇÕ´Ï´Ù.

¢¹ ÆÄÀϹé¾÷(File Backup)

PCÀÇ ¹é¾÷ÀÌ ÇÊ¿äÇÑ ½Ç½Ã°£ ¹é¾÷ÇÏ¿© ¾ÈÀüÇÏ°Ô º¸°ü ¹× À̷°ü¸® ÇÒ ¼ö ÀÖ½À´Ï´Ù.
1) ¹é¾÷½Ã½ºÅÛ »ç¿ë¿©ºÎ(Use the backup system)¸¦ üũ
2) ¹é¾÷ÇÒ Æú´õ¸¦ Ãß°¡
3) ¹é¾÷ÇÒ ÆÄÀÏ Å¸ÀÔÀ» ¼³Á¤(Àüü, ÁöÁ¤)
4) ¹é¾÷ ÀúÀå¼Ò¸¦ ¼­¹ö ¶Ç´Â »ç¿ëÀÚ·Î ÁöÁ¤, »ç¿ëÀÚÀÎ °æ¿ì ¹é¾÷ Æú´õ ¼³Á¤
5) ¹é¾÷¹æ¹ý ¼±ÅÃ
  * ÁöÁ¤½Ã°£ ¹Ýº¹½ÇÇà
  * ½Ã½ºÅÛ À¯ÈÞ ½Ã°£¿¡ ½ÇÇà
  * ¹é¾÷Áֱ⸦ ºÐ´ÜÀ§·Î ÀÔ·Â

6) ¹é¾÷µÈ ÆÄÀÏÀº ÁöÁ¤µÈ ¹é¾÷ Àå¼Ò¿¡ ¾Æ·¡¿Í °°ÀÌ ÀúÀåµË´Ï´Ù.
  - BackupFile_ID.kdu: ¹é¾÷ ÆÄÀÏ ¸®½ºÆ® 
  - BackupInfo_ID.kdu: ¹é¾÷ ÆÄÀÏÁ¤º¸ ¸®½ºÆ®
  - BackupSFile_ID.kdu: ¹é¾÷ ÀÌÀüÆÄÀÏ ¸®½ºÆ®
  - ¹é¾÷Æú´õ: ¹é¾÷µÈ ÃֽŠÆÄÀϵé
  _ Old_¹é¾÷Æú´õ: ¼öÁ¤, »èÁ¦µÈ ÆÄÀÏ ÀÌ·Â ÆÄÀÏ ¸®½ºÆ®

6.      Å¬¶óÀ̾ðÆ® DLL»ç¿ë ¹æ¹ý
¡Ø ºí·¯±×¿¡¼­ »ùÇüҽº ÆÄÀÏÀ» ´Ù¿î¹ÞÀ» ¼ö ÀÖ½À´Ï´Ù.
 http://udsmsg.blogspot.kr/http://blog.daum.net/daeung7


[ ¼Ò½ºÄÚµå(Delphi) ]

1) DLL¿¬°á ¿ë Type

 Type
  TCreateChatForm = function(AMainHandle: HWND; AId, APwd, APName: PChar; AIsAutoLogin: Boolean): HWND; cdecl; //äÆÃÆûCreate ÇÔ¼ö
  TSendMessage = function(AId, AMsg: PChar; ASendMethod: Integer): Boolean; cdecl; //¸Þ¼¼Áö Àü¼Û ÇÔ¼ö
  TDestoryChatForm = procedure; cdecl; //äÆÃÆû ¸Þ¸ð¸®ÇØÁ¦

 

2) º¯¼ö¼±¾ð

  Private
    FChatFormHwnd: HWND;//äÆÃâ Çڵ鰪 ÀúÀå
    FChatFormLib: THandle; //äÆàDLL Çڵ鰪
 public
    Procedure WMCopyData(var AMsg: TWMCopyData); message WM_COPYDATA; //¸Þ¼¼Áö ¹Þ´Â ÇÔ¼ö

 

3) Ã¤ÆÃÆû »ý¼º

procedure TForm1.FormShow(Sender: TObject);
var
  CreateChatForm: TCreateChatForm;
begin
  FChatFormLib := Loadlibrary('UDSClientLib.dll');
  if FChatFormLib <> 0 then
  begin
    @CreateChatForm := GetProcAddress(FChatFormLib, 'CreateChatForm');
    if @CreateChatForm <> nil then
      FChatFormHwnd := CreateChatForm(Self.Handle, PChar('aa'), PChar('aa'),
        PChar('TestUser'), True);
  end;
end;

 

4) Ã¤ÆÃÆû Á¾·á

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var
  DestoryChatForm: TDestoryChatForm;
begin
  if FChatFormLib <> 0 then
  begin
    @DestoryChatForm := GetProcAddress(FChatFormLib, 'DestoryChatForm');
    if @DestoryChatForm <> nil then
      DestoryChatForm;
    FreeLibrary(FChatFormLib);
  end;
end;

 

4) ¸Þ¼¼Áö Àü¼Û

procedure TForm1.BitBtn2Click(Sender: TObject);
var
  SendMessage: TSendMessage;
begin
  if FChatFormLib <> 0 then
  begin
    @SendMessage := GetProcAddress(FChatFormLib, 'SendMessage');
    if @SendMessage <> nil then
    begin
      if SendMessage(PChar(edId.Text), PChar(meMsg.Lines.Text), rgMsgType.ItemIndex) then //¾ÆÀ̵ð, ¸Þ¼¼Áö, Àü¼Û¹æ¹ý(0:äÆÃâ¿¡Ç¥½Ã, 1:ÇÁ·Î±×·¥ ¸Þ¼¼Áö·Î Ç¥½Ã)
        ShowMessage('OK')
      else
        ShowMessage('False')
    end;
  end;
end;

 

5. ¸Þ¼¼Áö ¹Þ±â: WM_COPY À©µµ¿ì ¸Þ¼¼Áö ¹æ½Ä»ç¿ë

* ¹ÞÀº¸Þ½ÃÁö ±¸Á¶: ID + #1 + Name + #2 + ¸Þ¼¼Áö

procedure TForm1.WMCopyData(var AMsg: TWMCopyData);
  procedure DisplayMsg(AStr: String);
  var
    i: Integer;
    cId, cNm, cMsg: String;
  begin
    i := Pos(#2, AStr);
    if i <= 0 then
      Exit;
    cId := Copy(AStr, 1, i -1);
    cMsg := Copy(AStr, i + 1, Length(AStr));

    i := Pos(#1, AStr);
    if i <= 0 then
      Exit;

    cNm := Copy(cId, 1, i -1);
    cId := Copy(cId, i + 1, Length(cId));

    ShowMessage('ID = ' + cId + #$D#$A +
      'Name = ' + cNm + #$D#$A +
      'Message = ' + cMsg);
  end;
var
  PBuff: PChar;
  SubStr: string;
begin
  PBuff := StrALloc(AMsg.CopyDataStruct.cbData);
  try
    StrCopy(PBuff, AMsg.CopyDataStruct.lpData);
    SubStr := Trim(PBuff);
    if AMsg.CopyDataStruct.dwData = $0717 then
      DisplayMsg(SubStr);
  finally
    StrDispose(PBuff);
  end;

  inherited;
end;