µî·Ï ¹× µî·Ï Ãë¼Ò·Î Àß ¹× Á¦°Å·Î ¼³Ä¡¸¦ ó¸® ÇÏ´Â WinMain ·çƾ. ¼ºñ½º¸¦ ½ÇÇà ÇÏ´Â °æ¿ì WinMain CServiceModule::Start ¸¦ È£Ãâ Çϴ¡£
CServiceModule::Start ´Â °¢ ¼ºñ½ºÀÇ ½ÃÀÛ ÇÔ¼ö¿¡ ¸ÅÇÎÇÏ´Â SERVICE_TABLE_ENTRY ±¸Á¶Ã¼ÀÇ ¹è¿À» ¼³Á¤ ÇÕ´Ï´Ù. ÀÌ ¹è¿Àº ´ÙÀ½ Win32 API ÇÔ¼ö¿¡ Àü´Þ µÈ StartServiceCtrlDispatcher. À̷п¡¼´Â, ÇϳªÀÇ EXE ¿©·¯ ¼ºñ½º¸¦ ó¸®ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¹× ¹è¿À» ¿©·¯ SERVICE_TABLE_ENTRY ±¸Á¶¸¦ °¡Áú ¼ö ÀÖ½À´Ï´Ù. ±×·¯³ª ÇöÀç,, ATL »ý¼º ¼ºñ½º´Â EXE ¸¶´Ù ÇϳªÀÇ ¼ºñ½º¸¦ Áö¿øÇÕ´Ï´Ù. µû¶ó¼ ¹è¿ ¼ºñ½º À̸§ ¹× ½ÃÀÛ ±â´ÉÀ¸·Î _ServiceName ¸¦ Æ÷ÇÔ ÇÏ´Â ´ÜÀÏ Ç׸ñ¿¡. _ServiceName Àº CServiceModule ServiceName ºñÁ¤Àû ¸â¹ö ÇÔ¼ö¸¦ È£Ãâ ÇÏ´Â Á¤Àû ¸â¹ö ÇÔ¼ö¡£
¸Þ¸ðnbsp;??¼ºñ½º Á¦¾î °ü¸®ÀÚ (SCM)¿¡ ¾Æ¸¶ ¿¬°áÇÒ StartServiceCtrlDispatcher ÀÇ ½ÇÆÐ´Â ÇÁ·Î±×·¥ÀÌ ¼ºñ½º·Î ½ÇÇà µÇÁö ÀÇ¹Ì ÇÕ´Ï´Ù. ÀÌ °æ¿ì ÇÁ·Î±×·¥ È£Ãâ CServiceModule::Run Á÷Á¢ ·ÎÄà ¼¹ö·Î ÇÁ·Î±×·¥ ½ÇÇà µÉ ¼ö ÀÖµµ·Ï ÇÕ´Ï´Ù. ·ÎÄà ¼¹ö ÇÁ·Î±×·¥À» ½ÇÇà ÇÏ´Â ¹æ¹ý¿¡ ´ë ÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº ´ÙÀ½ À¥ »çÀÌÆ®¸¦ ÂüÁ¶ ÇϽʽÿÀ. µð¹ö±ë ÆÁ(&N)¡£