www.pudn.com > back.rar > setmsgsize.cpp


#include "stdafx.h" 
#include "../iocpnet/iocpnet.h" 
#include "../protocol/protocol.h" 
 
//¼­¹ö°¡ ¹Þ´Â°Å 
void g_SetMsgSize() 
{  
	int i = 0; 
	for (i = 0 ; i < IOCP_MAX_CLIENT_MESSAGES ; i ++) 	g_arydwMsgSize[i] = 0; 
 
	g_arydwMsgSize[SSM_SERVER_READY_DONTUSE]	= (DWORD)sizeof(MP_ServerReady_dont_use);//1 
	g_arydwMsgSize[SSM_SERVER_CONNECTION_CHECK]	= (DWORD)sizeof( SSP_Connection_Check );  // gr8won 6_27 //4 
	g_arydwMsgSize[SSM_USERINCOMING_STANDBY]	= (DWORD)sizeof(MP_UserIncoming_Standby);//10 
	g_arydwMsgSize[SSM_USERINCOMING_READY]		= (DWORD)sizeof(MP_UserIncoming_Ready);//11 
	g_arydwMsgSize[SSM_PRIVATE_CHAT]			= (DWORD)sizeof(MP_Private_Chat);//12 
 
	g_arydwMsgSize[SSM_SHOUT_CHAT]				= (DWORD)sizeof(MP_Shout_Chat);//14 
	g_arydwMsgSize[SSM_WARP_REQUEST]			= (DWORD)sizeof(MP_Warp_Request);//15 
	g_arydwMsgSize[SSM_WARP_REPLY]				= (DWORD)sizeof(MP_Warp_Reply);//16 
 
	g_arydwMsgSize[SSM_GAMEINFO_LOGOUT] =  (DWORD)sizeof(MP_GameInfo_Logout);  
	g_arydwMsgSize[SSM_GAMEINFO_SAVE]   =  (DWORD)sizeof(MP_GameInfo_Save);  
	g_arydwMsgSize[SSM_GAMEINFO_ERROR]			= (DWORD)sizeof(MP_GameInfo_Error );//19 
	g_arydwMsgSize[SSM_GAMEINFO_LOGIN]  =  (DWORD)sizeof(MP_GameInfo_Login);  
 
	g_arydwMsgSize[SSM_GAMEINFO_PRODUCE_ITEM]			= (DWORD)sizeof( MP_GameInfo_ProduceItem );//21 
	g_arydwMsgSize[SSM_GAMEINFO_PRODUCE_ITEM_RESULT]	= (DWORD)sizeof( MP_GameInfo_ProduceItem_Result );//22 
 
	g_arydwMsgSize[SSM_GAMEINFO_MAKE_CHARACTER] = (DWORD)sizeof(MP_GameInfo_Make_Character); 
	g_arydwMsgSize[SSM_GAMEINFO_DELETE_CHARACTER] = (DWORD)sizeof(MP_GameInfo_Delete_Character); 
 
	g_arydwMsgSize[SSM_USERINCOMING_STORAGE_STANDBY]= (DWORD)sizeof(MP_UserIncoming_Storage_Standby); //25 
	g_arydwMsgSize[SSM_USERINCOMING_HORSE_STANDBY]	= (DWORD)sizeof(MP_UserIncoming_Horse_Standby); //26 
 
	// 2004-2-10 
	g_arydwMsgSize[ SSM_GUILD_INCOMMING]	= (DWORD)sizeof( MP_Guild_Incomming );//27 
	g_arydwMsgSize[ SSM_GUILD_MARK ]		= (DWORD)sizeof( MP_Guild_Mark );//28 
	g_arydwMsgSize[ SSM_GUILD_DELETE ]		= (DWORD)sizeof( MP_Guild_Delete );//29 
 
	// 2004-2-15 
	g_arydwMsgSize[ SSM_GUILD_CHAT ] = (DWORD)sizeof( MP_Guild_Chat );//30 
 
	g_arydwMsgSize[SSM_USER_NUMBER]      = (DWORD)sizeof(MP_User_Number); 
 
	g_arydwMsgSize[SSM_ACCOUNTINFO_CHECK]    = (DWORD)sizeof(MP_AccountInfo_Check); 
	g_arydwMsgSize[SSM_ACCOUNTINFO_ERROR]    = (DWORD)sizeof(MP_AccountInfo_Error); 
	g_arydwMsgSize[SSM_ACCOUNTINFO_LOGOUT]    =(DWORD)sizeof(MP_AccountInfo_Logout);  
	g_arydwMsgSize[SSM_ACCOUNTINFO_LOGIN]    =(DWORD)sizeof(MP_AccountInfo_Login);  
 
	g_arydwMsgSize[ SSM_SERVERSTATUS_CHANGE ] = (DWORD)sizeof( MP_ServerStatus_Change ); 
 
	g_arydwMsgSize[SSM_GAMEINFO_UNIQUEITEMTIME] =  (DWORD)sizeof(MP_GameInfo_UniqueItemTime);   //  2004 3 - 22 Á¸¼­¹ö¿¡¼­ ½ÃÀ۽à À¯´ÏÅ© ¾ÆÀÌÅÛÀ» ¼³Á¤ 
 
	g_arydwMsgSize[ SSM_WARP_USERINFO ]	= (DWORD)sizeof( MP_Warp_Userinfo );//38 
 
	g_arydwMsgSize[ GW_USER_CONNECTED ]		= (DWORD)sizeof(GW_User_Connect);		// gr8won 20040525 gateway edition//39 
	g_arydwMsgSize[ GW_USER_DISCONNECTED ]	= (DWORD)sizeof(GW_User_DisConnected);		// gr8won 20040525 gateway edition//40 
 
	g_arydwMsgSize[ GW_USER_COUNT ] = (DWORD)sizeof( GP_User_Count ); 
	g_arydwMsgSize[ SSM_GAMEINFO_USER_COUNT ] = ( DWORD )sizeof( MP_Gameinfo_User_Count );//42 
 
	g_arydwMsgSize[ SSM_GAMEINFO_USER_COUNT ] = ( DWORD )sizeof( MP_Gameinfo_User_Count );//42 
 
	g_arydwMsgSize[ SSM_TAIWAN_LOGIN_CHECK ] = ( DWORD )sizeof( MP_Taiwan_Login_Check );//46 01-20 Baek.. ´ë¸¸ ºô¸µ°ü·Ã Ãß°¡ 
 
	g_arydwMsgSize[SSM_ACCOUNTDB_CHECK]		 = (DWORD)sizeof(MP_AccountDB_Check);  	 
	g_arydwMsgSize[SSM_ACCOUNTDB_CHECK_RESULT]=(DWORD)sizeof(MP_AccountDB_Check_Result);  
 
	g_arydwMsgSize[SSM_ACCOUNTDB_USER_LOGOUT] = (DWORD)sizeof(MP_AccountDB_Logout);  
 
	g_arydwMsgSize[GSM_GAMETOOL_CHECK]		 = (DWORD)sizeof(GSP_GameTool_Check);  			// 69   GameTool °èÁ¤È®ÀÎ YD 041011  (ij¸¯Åø ¸»ÇÏ´Â °ÍÀÓ) 
	g_arydwMsgSize[GSM_GAMETOOL_CHECK_RESULT]=(DWORD)sizeof(GSP_GameTool_Check_Result);		// 70	GameTool °èÁ¤È®ÀÎ YD 041011  
 
	g_arydwMsgSize[ SSM_PPPOINT_TRADE_REQUEST ]          = sizeof ( MP_PPPoint_Trade_Request );	//70	// YD 041016 PP point(China) 
	g_arydwMsgSize[ SSM_PPPOINT_TRADE_RESULT ]          = sizeof ( MP_PPPoint_Trade_Result );	//71 
	 
	g_arydwMsgSize[SSM_GAMEDB_CHARACTER_INFO]=(DWORD)sizeof(MP_Character_Info); 
	g_arydwMsgSize[SSM_GAMEDB_CHARACTER_INFOLIST]=(DWORD)sizeof(MP_Character_InfoList); 
	g_arydwMsgSize[SSM_GAMEDB_CHARACTER_SAVE]=(DWORD)sizeof(MP_Character_Save); 
	g_arydwMsgSize[SSM_GAMEDB_CHARACTER_SINGLEINFO]=(DWORD)sizeof(MP_Character_Single_Info); 
	 
	// ¾÷µ¥ÀÌÆ® 
	g_arydwMsgSize[ LCM_UPDATE_VERSION_CHECK ] = (DWORD)sizeof( LCP_Update_Version_Check );	//95 
 
	g_arydwMsgSize[SSM_GAMEDB_ERROR]				= (DWORD)sizeof( MP_GameDB_Error );//100 
 
	g_arydwMsgSize[SSM_GAMEDB_CHARACTER_MAKE] = (DWORD)sizeof(MP_GameDB_CharacterMake);   //  4 - 10 032 Ãß°¡ 
	g_arydwMsgSize[SSM_GAMEDB_CHARACTER_DELETE] = (DWORD)sizeof(MP_GameDB_CharacterDelete);   //  6 - 10 032 Ãß°¡ 
	g_arydwMsgSize[SSM_GAMEDB_CHARACTER_STORAGE]=(DWORD)sizeof(MP_Character_Single_Store); 
	g_arydwMsgSize[SSM_GAMEDB_SAVE_STORAGE]=(DWORD)sizeof(MP_Character_Storage_Save); 
 
	g_arydwMsgSize[SSM_GAMEDB_HORSE_LOAD]			= (DWORD)sizeof(MP_Horse_Info);//106 
	g_arydwMsgSize[SSM_GAMEDB_HORSE_SAVE] =  (DWORD)sizeof(MP_Character_Horse_Save);   //  12 - 3 032 Ãß°¡ 
	g_arydwMsgSize[SSM_GAMEDB_HORSE_INSERT] =  (DWORD)sizeof(MP_Character_Horse_Insert);   //  12 - 3 032 Ãß°¡ 
	g_arydwMsgSize[SSM_GAMEDB_HORSE_INSERT_REPLY]	= (DWORD)sizeof(MP_Horse_Insert_Reply);//109 
	g_arydwMsgSize[SSM_GAMEDB_HORSE_DELETE] =  (DWORD)sizeof(MP_Horse_Delete);   //  12 - 3 032 Ãß°¡ 
	g_arydwMsgSize[SSM_GAMEDB_HORSE_DELETE_REPLY]	= (DWORD)sizeof(MP_Horse_Delete_Reply);//111 
 
	g_arydwMsgSize[ SSM_GAMEDB_GUILD_INSERT ]	 = (DWORD)sizeof( MP_GameDB_Guild_Insert );//112 
	g_arydwMsgSize[ SSM_GAMEDB_GUILD_REPLY ]	 = (DWORD)sizeof( MP_GameDB_Guild_Reply );//113 
	g_arydwMsgSize[ SSM_GUILD_COMMAND ]			 = (DWORD)sizeof( MP_Guild_Command );//114 
	g_arydwMsgSize[ SSM_GUILD_REPLY ]			 = (DWORD)sizeof( MP_Guild_Reply );//115 
 
	g_arydwMsgSize[SSM_GAMEDB_GUILD_LOAD]=(DWORD)sizeof(MP_Guild_Info); 
	g_arydwMsgSize[SSM_GAMEDB_GUILDMAKE_UPDATE] =  (DWORD)sizeof(MP_GameDB_GuildMark_Update);   //  12 - 3 032 Ãß°¡	 
 
	g_arydwMsgSize[SSM_GAMEDB_UNIQUE] =  (DWORD)sizeof(MP_GameDB_Unique);   //  2004 3 - 22 032 Ãß°¡	 
	g_arydwMsgSize[ SSM_GAMEDB_UNIQUE_REPLY ] = (DWORD)sizeof( MP_GameDB_Unique_Reply );//119 
	g_arydwMsgSize[SSM_GAMEDB_GUILD_REQUIRE] =  (DWORD)sizeof(MP_GameDB_Guild_Require);   //  2004 3 - 22 Á¸¼­¹ö¿¡¼­ ½ÃÀ۽à À¯´ÏÅ© ¾ÆÀÌÅÛÀ» ¼³Á¤ 
	g_arydwMsgSize[SSM_GAMEINFO_GUILD_REQUIRE] = (DWORD)sizeof(MP_GameInfo_Guild_Require); 
 
	g_arydwMsgSize[SSM_GAMEDB_REQUEST_KNIGHTINFO] = (DWORD)sizeof(MP_GAMEDB_Request_KnightInfo); // 122 
	g_arydwMsgSize[SSM_GAMEDB_REPLY_KNIGHTINFO] = (DWORD)sizeof(MP_GAMEDB_Reply_KnightInfo); // 123 
 
	g_arydwMsgSize[SSM_GAMEDB_OVERUSER_COUNT] = (DWORD)sizeof(MP_GAMEDB_Overuser_Count); // 124 
 
	g_arydwMsgSize[LCM_ACCOUNT_CHECK]        = (DWORD)sizeof(LCP_Account_Check); 
	g_arydwMsgSize[LCM_GROUPSERV_SELECT]     = (DWORD)sizeof(LCP_GroupServ_Select); 
	g_arydwMsgSize[LCM_CHRACTER_SELECT]      = (DWORD)sizeof(LCP_Character_Select); 
	g_arydwMsgSize[LCM_LOGIN_CHARACTER_MAKE] = (DWORD)sizeof(LCP_Login_CharacterMake); 
	g_arydwMsgSize[LCM_LOGIN_CHARACTER_DELETE] = (DWORD)sizeof(LCP_Login_CharacterDelete); 
	g_arydwMsgSize[LCM_LOGIN_LIVE_CHECK] = (DWORD)sizeof(LCP_Login_Live_Check); 
	g_arydwMsgSize[LCM_REQUEST_GROUPSERV_SELECT] = (DWORD)sizeof(LCP_Request_GroupServ_Select); 
 
	g_arydwMsgSize[ SSM_PARTY_REQUEST ] = (DWORD)sizeof( MP_Party_Request );//140 
	g_arydwMsgSize[ SSM_PARTY_REPLY ]	= (DWORD)sizeof( MP_Party_Reply );//141 
	g_arydwMsgSize[ SSM_MEMBER_INFO ]	= (DWORD)sizeof( MP_Member_Info );//142 
 
	g_arydwMsgSize[ SSM_MESSAGE ]				= (DWORD)sizeof( MP_Message );//143 
	g_arydwMsgSize[ SSM_OPERATOR_MODE ]			= (DWORD)sizeof( MP_Operator_Mode );//144 
	g_arydwMsgSize[ SSM_OPERATOR_MODE_RESULT ]	= (DWORD)sizeof( MP_Operator_Mode_Result );//145 
	g_arydwMsgSize[ SSM_HORSE_LOGOUT ]			= (DWORD) sizeof( MP_Horse_Logout );//146 
 
	//itembill 
	g_arydwMsgSize[ CM_SERIAL_INPUT ] = (DWORD)sizeof( CP_Serial_Input );	//150 
	g_arydwMsgSize[SSM_SERIAL_INPUT] = (DWORD)sizeof( MP_Serial_Input ); 
	g_arydwMsgSize[SSM_SERIAL_RESULT] = (DWORD)sizeof( MP_Serial_Result );//152 
	g_arydwMsgSize[SSM_SERIAL_USE] = (DWORD)sizeof( MP_Serial_Use ); 
 
	g_arydwMsgSize[SSM_LOGIN_BILLING_CHECK] = (DWORD)sizeof( MP_Login_Billing_Check ); //156 
	g_arydwMsgSize[SSM_LOGIN_BILLING_RESULT] = (DWORD)sizeof( MP_Login_Billing_Result ); //157 
	g_arydwMsgSize[SSM_LOGOUT_BILLING_RESULT] = (DWORD)sizeof( MP_Logout_Billing_Result ); //158 
	g_arydwMsgSize[SSM_ALLUSE_BILLING] = (DWORD)sizeof( MP_Alluse_Billing ); //159 
	 
	g_arydwMsgSize[SSM_REQUEST_ITEM_BILLING] = (DWORD)sizeof( MP_Request_Item_Billing ); //160 
	g_arydwMsgSize[SSM_REPLY_ITEM_BILLING] = (DWORD)sizeof( MP_Reply_Item_Billing ); //161 
 
	g_arydwMsgSize[SSM_CLOSE_SERVER] = (DWORD)sizeof( MP_Close_Server ); //162	 
  
	g_arydwMsgSize[SSM_BILLING_CHECKTIME_REQUEST ] = (DWORD)sizeof(MP_Billing_CheckTime_Request );	// 165 YD 041028  È«Äá ºô¸µ 
	g_arydwMsgSize[SSM_BILLING_CHECKTIME_REPLY ] = (DWORD)sizeof( MP_Billing_CheckTime_Reply );		// 166 
	 
	g_arydwMsgSize[SSM_CAEM_ENTRY_EVENT_REQUEST ] = (DWORD)sizeof( MP_Caem_Entry_Event_Request );		// 167	//1111-LIM 
	g_arydwMsgSize[SSM_CAEM_ENTRY_EVENT_REPLY ] = (DWORD)sizeof( MP_Caem_Entry_Event_Reply );		// 168	//1111-LIM 
	 
	// 1117-LIM 
	g_arydwMsgSize[SSM_DUNGEONSTORAGE_SAVE ] = (DWORD)sizeof( MP_DungeonStorage_Save );		// 169 
 
	g_arydwMsgSize[ SSM_TRY_DUNGEON_REQUEST ]	 = (DWORD)sizeof( MP_Try_Dungeon_Request );//112	// 1117-LIM 
	g_arydwMsgSize[ SSM_TRY_DUNGEON_REPLY ]	 = (DWORD)sizeof( MP_Try_Dungeon_Reply );//112	// 1117-LIM 
 
	g_arydwMsgSize[SSM_GAMEDB_TOOL] = (DWORD)sizeof(MP_TOOL);  //  6-25 Baek.. 
	g_arydwMsgSize[SSM_GAMEDB_TOOL_RESULT] = (DWORD)sizeof(MP_TOOL_RESULT);  //  6-25 Baek.. 
	 
	g_arydwMsgSize[SSM_REQUEST_CHANGE_NAME] = (DWORD)sizeof(MP_Request_Change_Name);  // NameChange-LIM 
	g_arydwMsgSize[SSM_REPLY_CHANGE_NAME] = (DWORD)sizeof(MP_Reply_Change_Name);  // NameChange-LIM 
	 
	// ¼­¹öÅëÇÕ¼öÁ¤ 
	g_arydwMsgSize[SSM_GUILD_EACH_INCOMMING] = (DWORD)sizeof(MP_Guild_Each_Incomming);  
	g_arydwMsgSize[SSM_GUILD_POS] = (DWORD)sizeof(MP_Guild_Pos);   
	g_arydwMsgSize[SSM_REPLY_CHENNEL] = (DWORD)sizeof(MP_Reply_Chennel);   
 
	// ´ë¸¸ºô¸µ°ü·Ã 01-18 Baek.. ´ë¸¸ ºô¸µ 
	g_arydwMsgSize[SSM_TAIWAN_BILLING_LOGIN_RESPONSE]	= (DWORD)sizeof(MP_Taiwan_Billing_Login_Response);	//171 
	g_arydwMsgSize[SSM_TAIWAN_BILLING_LOGOUT]			= (DWORD)sizeof(MP_Taiwan_Billing_Logout);			//172 
	g_arydwMsgSize[SSM_TAIWAN_BILLING_CHECK_REQUEST]	= (DWORD)sizeof(MP_Taiwan_Billing_Check_Request);	//173 
	g_arydwMsgSize[SSM_TAIWAN_BILLING_EXPIRE]			= (DWORD)sizeof(MP_Taiwan_Billing_Expire);			//174 
	g_arydwMsgSize[SSM_TAIWAN_BILLING_USING_REQUEST]	= (DWORD)sizeof(MP_Taiwan_Billing_Using_Request);	//175 
	g_arydwMsgSize[SSM_TAIWAN_BILLING_USING_REPLY]		= (DWORD)sizeof(MP_Taiwan_Billing_Using_Reply);			//176 
 
	g_arydwMsgSize[SSM_ACC_CHECK_SOCIALNUM_REQUEST ]	= (DWORD)sizeof(MP_Acc_Check_SocialNum_Request);	// 178	YD 050120 
	g_arydwMsgSize[SSM_ACC_CHECK_SOCIALNUM_REPLY ]		= (DWORD)sizeof(MP_Acc_Check_SocialNum_Reply);		// 179	YD 050120 
 
	g_arydwMsgSize[SSM_POINT_COUPON_REQUEST ]		= (DWORD)sizeof(MP_Point_Coupon_Request);		// 180	Baek.. 050311 Point Coupon 
	g_arydwMsgSize[SSM_POINT_COUPON_REPLY ]		= (DWORD)sizeof(MP_Point_Coupon_Reply);				// 181	Baek.. 050311 Point Coupon 
 
	g_arydwMsgSize[CM_MOVE_BROADCAST]			= (DWORD)sizeof(CP_Move_Broadcast);//256 
	g_arydwMsgSize[SM_MOVE_BROADCAST]			= (DWORD)sizeof(SP_Move_Broadcast);//257 
 
	g_arydwMsgSize[SM_APPEAR]					= (DWORD)sizeof(SP_Appear);//260 
	g_arydwMsgSize[CM_DISCONNECT]				= (DWORD)sizeof(CP_DisConnect);//261 
	g_arydwMsgSize[SM_DISAPPEAR]				= (DWORD)sizeof(SP_DisAppear);//262 
 
	g_arydwMsgSize[CM_LOGINZONE]				= (DWORD)sizeof(CP_LoginZone);//263 
	g_arydwMsgSize[SM_LOGINZONE]				= (DWORD)sizeof(SP_LogInZone);//264 
	 
	g_arydwMsgSize[SM_CHECK_CONNECTION]			= (DWORD)sizeof(SP_Check_Connection);	// 6-26//265 
 
	g_arydwMsgSize[CM_NORMAL_CHAT]				= (DWORD)sizeof(CP_Normal_Chat);//266 
	g_arydwMsgSize[CM_PRIVATE_CHAT]				= (DWORD)sizeof(CP_Private_Chat);//267 
	g_arydwMsgSize[CM_SHOUT_CHAT]				= (DWORD)sizeof(CP_Shout_Chat);//268 
	g_arydwMsgSize[CM_PARTY_CHAT]				= (DWORD)sizeof(CP_Party_Chat);//269 
	g_arydwMsgSize[CM_GUILD_CHAT]				= (DWORD)sizeof(CP_Guild_Chat);//270 
 
	g_arydwMsgSize[CM_TRADE]					= (DWORD)sizeof(CP_Trade);			// 11-8//271 
	g_arydwMsgSize[CM_REQUIRE_INDEX]			= (DWORD)sizeof(CP_Require_Index);//272 
	g_arydwMsgSize[CM_TELEPORTER]				= (DWORD)sizeof(CP_Teleporter);//273 
 
	g_arydwMsgSize[SM_NPC_APPEAR]				= (DWORD)sizeof( SP_NPC_Appear );//276 
	g_arydwMsgSize[SM_NPC_MOVE]					= (DWORD)sizeof( SP_NPC_Move );//277 
 
	g_arydwMsgSize[SM_WARP]						= (DWORD)sizeof(SP_Warp);//278 
	g_arydwMsgSize[CM_WARP]						= (DWORD)sizeof(CP_Warp);//279 
 
	g_arydwMsgSize[CM_TAKEOFF_ITEM]				= (DWORD)sizeof( CP_Takeoff_Item );//280 
	g_arydwMsgSize[SM_TAKEOFF_ITEM]				= (DWORD)sizeof( SP_Takeoff_Item );//281 
 
	g_arydwMsgSize[CM_CHANGE_ITEM]				= (DWORD)sizeof( CP_Change_Item );//282 
	g_arydwMsgSize[SM_CHANGE_ITEM]				= (DWORD)sizeof( SP_Change_Item );//283 
 
	g_arydwMsgSize[CM_DROP_ITEM]				= (DWORD)sizeof( CP_Drop_Item );//284 
	g_arydwMsgSize[SM_DROP_ITEM]				= (DWORD)sizeof( SP_Drop_Item );//285 
	g_arydwMsgSize[SM_ITEM_APPEAR]				= (DWORD)sizeof( SP_Item_Appear );//286 
 
	g_arydwMsgSize[CM_PICKUP_ITEM]				= (DWORD)sizeof( CP_Pickup_Item );//287 
	g_arydwMsgSize[SM_PICKUP_ITEM]				= (DWORD)sizeof( SP_Pickup_Item );//288 
	g_arydwMsgSize[SM_ITEM_DISAPPEAR]			= (DWORD)sizeof( SP_Item_Disappear );//289 
 
	g_arydwMsgSize[CM_BUY]						= (DWORD)sizeof( CP_Buy );//290 
	g_arydwMsgSize[SM_BUY_OK]					= (DWORD)sizeof( SP_Buy_OK );//291 
	g_arydwMsgSize[SM_BUY_ERROR]				= (DWORD)sizeof( SP_Buy_Error );//292 
 
 
	g_arydwMsgSize[CM_ATTACK_NPC]				= (DWORD)sizeof(CP_Attack_NPC);//293 
	g_arydwMsgSize[SM_ATTACK_NPC]				= (DWORD)sizeof(SP_Attack_NPC);//294 
 
	g_arydwMsgSize[CM_WEATHER]					= (DWORD)sizeof( CP_Weather );//295 
	g_arydwMsgSize[SM_WEATHER]					= (DWORD)sizeof( SP_Weather );//296 
 
	g_arydwMsgSize[SM_NPC_RESPAWN]				= (DWORD)sizeof( SP_NPC_Respawn );//297 
	g_arydwMsgSize[SM_NPC_DIE]					= (DWORD)sizeof( SP_NPC_Die );//298 
 
	g_arydwMsgSize[CM_SELL]						= (DWORD)sizeof( CP_Sell );//299 
	g_arydwMsgSize[SM_SELL_OK]					= (DWORD)sizeof( SP_Sell_OK );//300 
	g_arydwMsgSize[SM_SELL_ERROR]				= (DWORD)sizeof( SP_Sell_Error );//301 
 
	g_arydwMsgSize[SM_NPC_ATTACK_PC]			= (DWORD)sizeof( SP_NPC_Attack_PC );//302 
	g_arydwMsgSize[CM_WARP_READY]				= (DWORD)sizeof( CP_Warp_Ready );//303 
 
	g_arydwMsgSize[SM_TIME_CHANGE]				= (DWORD)sizeof( SP_Time_Change );//304 
 
	g_arydwMsgSize[SM_ITEM_CHANGE]				= (DWORD)sizeof( SP_Item_Change );//305 
	g_arydwMsgSize[SM_ITEM_MOVE]				= (DWORD)sizeof( SP_Item_Move );//306 
	g_arydwMsgSize[SM_ITEM_EXTINCTION]			= (DWORD)sizeof( SP_Item_Extinction);//307 
 
	g_arydwMsgSize[CM_ATTACK_ITEM]				= (DWORD)sizeof( CP_Attack_Item );//308 
	g_arydwMsgSize[SM_ATTACK_ITEM]				= (DWORD)sizeof( SP_Attack_Item );//309 
 
	g_arydwMsgSize[ CM_CHANGE_STAT ]			= (DWORD)sizeof( CP_Change_Stat );//314 
 
	g_arydwMsgSize[ CM_USE_POTION ]				= (DWORD)sizeof( CP_Use_Potion );//319 
	g_arydwMsgSize[ SM_USE_POTION ]				= (DWORD)sizeof( SP_Use_Potion );//320 
 
	// 3-8(?) 
	g_arydwMsgSize[ CM_TRY_UNITE ]				= (DWORD)sizeof( CP_Try_Unite );//322 
	g_arydwMsgSize[ SM_TRY_UNITE ]				= (DWORD)sizeof( SP_Try_Unite );//323 
	g_arydwMsgSize[ CM_REPLY_UNITE ]			= (DWORD)sizeof( CP_Reply_Unite );//324 
	g_arydwMsgSize[ SM_REPLY_UNITE ]			= (DWORD)sizeof( SP_Reply_Unite );//325 
	g_arydwMsgSize[ CM_SEPERATE_UNIT ]			= (DWORD)sizeof( CP_Seperate_Unite );//326 
	g_arydwMsgSize[ SM_SEPERATE_UNIT ]			= (DWORD)sizeof( SP_Seperate_Unite  );//327 
 
	// 3-14 
	g_arydwMsgSize[ CM_TOGGLE_RUN ]				= (DWORD)sizeof( CP_Toggle_Run );//328 
	g_arydwMsgSize[ SM_TOGGLE_RUN ]				= (DWORD)sizeof( SP_Toggle_Run );//329 
	g_arydwMsgSize[ CM_TOGGLE_ATTACKMODE ]		= (DWORD)sizeof( CP_Toggle_AttackMode );//330 
	g_arydwMsgSize[ SM_TOGGLE_ATTACKMODE ]		= (DWORD)sizeof( SP_Toggle_AttackMode );//331 
 
	// 3-19....10-13 
	g_arydwMsgSize[ CM_PARTY ]		        	= (DWORD)sizeof( CP_Party );//332 
	g_arydwMsgSize[ CM_ITEM_REPAIR ]            = (DWORD)sizeof( CP_Item_Repair );//337 
 
	g_arydwMsgSize[ CM_HORSE_WEAR ]	            = (DWORD)sizeof( CP_Horse_Wear );//338 
 
	g_arydwMsgSize[ SM_ARROW_GOING ]			= (DWORD)sizeof( SP_Arrow_Going );//341 
	g_arydwMsgSize[ SM_MAGIC_GOING ]			= (DWORD)sizeof( SP_Magic_Going );//342 
 
	g_arydwMsgSize[ CM_ATTACK_PC ]		    	= (DWORD)sizeof( CP_Attack_PC );//344 
	g_arydwMsgSize[ SM_ATTACK_PC ]		    	= (DWORD)sizeof( SP_Attack_PC );//345 
	g_arydwMsgSize[ CM_REQUEST_PK ]			    = (DWORD)sizeof( CP_Request_PK );//346 
	g_arydwMsgSize[ SM_REQUEST_PK ]		    	= (DWORD)sizeof( SP_Request_PK );//347 
	g_arydwMsgSize[ CM_REPLY_PK ]			    = (DWORD)sizeof( CP_Reply_PK );//348 
	g_arydwMsgSize[ SM_REPLY_PK ]			    = (DWORD)sizeof( SP_Reply_PK );//349 
 
	//3-21  first 032 
	g_arydwMsgSize[ CM_HORSE_DOWN ]				= (DWORD)sizeof( CP_Horse_Down );//350 
 
	// 2004-2-8..±æµå°ü·Ã 
	g_arydwMsgSize[ CM_GUILD ]	            	= (DWORD)sizeof( CP_Guild );//352 
	g_arydwMsgSize[ CM_GUILD_MAKE ]             = (DWORD)sizeof( CP_Guild_Make );//353 
 
	//3 - 28 032 
	g_arydwMsgSize[ CM_HORSE_RIDE ]				= (DWORD)sizeof( CP_Horse_Ride );//354 
	 
	// 4-29 
	g_arydwMsgSize[ CM_CHANGE_CLASS ]			= (DWORD)sizeof( CP_Change_Class );//356 
	g_arydwMsgSize[ SM_CHANGE_CLASS ]			= (DWORD)sizeof( SP_Change_Class );//357 
	g_arydwMsgSize[ SM_NPC_DAMAGE ]				= (DWORD)sizeof( SP_NPC_Damage );		// npc dmg, statusº¯È­//358 
 
	g_arydwMsgSize[ CM_USER_INIT ]              = (DWORD)sizeof( CP_User_Init );//359 
 
	g_arydwMsgSize[ SM_REQUEST_REVIVE ]			= (DWORD)sizeof( SP_Request_Revive );//360 
	g_arydwMsgSize[ CM_REPLY_REVIVE ]			= (DWORD)sizeof( CP_Reply_Revive );//361 
	g_arydwMsgSize[ SM_USER_REVIVE ]			= (DWORD)sizeof( SP_User_Revive );//362 
 
	g_arydwMsgSize[ CM_HORSE_ATTR ]				= (DWORD)sizeof( CP_Horse_Attr );//365 
	g_arydwMsgSize[ SM_HORSE_ATTR ]				= (DWORD)sizeof( SP_Horse_Attr );//366 
 
	g_arydwMsgSize[ CM_HORSE_KEEPIN ]           = (DWORD)sizeof( CP_Horse_Keepin ); 	 
 
	g_arydwMsgSize[ CM_HORSE_KEEPOUT ]			= (DWORD)sizeof( CP_Horse_Keepout );//369 
	g_arydwMsgSize[ SM_HORSE_KEEPOUT ]			= (DWORD)sizeof( SP_Horse_Keepout );//370 
	 
	g_arydwMsgSize[ CM_TAMING_HORSE ]			= (DWORD)sizeof( CP_Taming_Horse );//371 
	g_arydwMsgSize[ SM_TAMING_HORSE ]			= (DWORD)sizeof( SP_Taming_Horse );//372 
	g_arydwMsgSize[ CM_TREAT_CARROT ]			= (DWORD)sizeof( CP_Treat_Carrot );//373 
 
	g_arydwMsgSize[ CM_USE_SKILL ]				= (DWORD)sizeof( CP_Use_Skill );//376 
	g_arydwMsgSize[ SM_USE_SKILL ]				= (DWORD)sizeof( SP_Use_Skill );//377 
 
	g_arydwMsgSize[ CM_INVEN_CHANGE ]			= (DWORD)sizeof( CP_Inven_Change );//379 
	g_arydwMsgSize[ SM_INVEN_CHANGE ]			= (DWORD)sizeof( SP_Inven_Change );//380 
 
	g_arydwMsgSize[ CM_ADMIN_CHAT ]				= (DWORD)sizeof( CP_Admin_Chat );//381 
	g_arydwMsgSize[ SM_ADMIN_CHAT ]				= (DWORD)sizeof( SP_Admin_Chat );//382 
 
	g_arydwMsgSize[ SM_SLIDE_NPC ]				= (DWORD)sizeof( SP_Slide_NPC );//383 
	g_arydwMsgSize[ SM_SLIDE_PC  ]				= (DWORD)sizeof( SP_Slide_PC );//384 
 
	g_arydwMsgSize[ SM_CONFIRM_POTION ]			= (DWORD)sizeof( SP_Confirm_Potion );//385 
 
	g_arydwMsgSize[ CM_NOW_TIME ]				= (DWORD)sizeof( CP_Now_Time );//386 
	g_arydwMsgSize[ CM_KILL_CLIENT ]			= (DWORD)sizeof( CP_Kill_Client );//387 
	g_arydwMsgSize[ SM_KILL_CLIENT ]			= (DWORD)sizeof( SP_Kill_Client );//388 
 
	g_arydwMsgSize[ CM_CHECK_CONNECTION ]		= (DWORD)sizeof( CP_Check_Connection );//389 
	g_arydwMsgSize[ SM_NO_EXIST ]				= (DWORD)sizeof( SP_No_Exist );//390 
	g_arydwMsgSize[ CM_REQUIRE_DATA ]			= (DWORD)sizeof( CP_Require_Data );//391 
 
	g_arydwMsgSize[ CM_CHR_DIR ]	    		= (DWORD)sizeof( CP_Chr_Dir );//392 
	g_arydwMsgSize[ SM_CHR_DIR ]		    	= (DWORD)sizeof( SP_Chr_Dir );//393 
	 
	g_arydwMsgSize[ CM_NPC_ENERGY ] 			= (DWORD)sizeof( CP_NPC_Energy );//394 
 
/// ¾Æ³¢±âÀ§ÇÑ ¹æ¹ý CM ¸¸ ¼³Á¤ 
	g_arydwMsgSize[ CM_NPC_STATUS ]			    = (DWORD)sizeof( CP_NPC_Status );//396 
	g_arydwMsgSize[ CM_GET_QUEST ]			    = (DWORD)sizeof( CP_Get_Quest );//399 
	// 1006-LIM // 
	g_arydwMsgSize[ CM_CHANGE_STATUS ]			    = (DWORD)sizeof( CP_Change_Status );//401 
	g_arydwMsgSize[ CM_COMPLETE_PUZZLE ]	    = (DWORD)sizeof( CP_Complete_Puzzle );//402 
 
 
	g_arydwMsgSize[ CM_QUEST_CHECK ]	= (DWORD)sizeof( CP_Quest_Check );	//405 
	g_arydwMsgSize[ CM_MODE_CHANGE ]    = (DWORD)sizeof( CP_Mode_Change );//407 
	g_arydwMsgSize[ CM_REGISTER_BOARD ] = (DWORD)sizeof( CP_Register_Board );//408 
	g_arydwMsgSize[ CM_STORAGE_CHANGE ]	= (DWORD)sizeof( CP_Storage_Change );//413 
 
	g_arydwMsgSize[ CM_OPERATOR_MODE ]	= (DWORD)sizeof( CP_Operator_Mode );//418 
 
	g_arydwMsgSize[ CM_OPERATOR_CHAT ]  = (DWORD)sizeof( CP_Operator_Chat );//420 
	g_arydwMsgSize[ CM_SKILL_UPGRADE ]  = (DWORD)sizeof( CP_Skill_Upgrade );//421 
 
	g_arydwMsgSize[ CM_TRY_ITEMDEAL ]	= (DWORD)sizeof( CP_Try_Itemdeal );//423 
	g_arydwMsgSize[ CM_REPLY_ITEMDEAL ] = (DWORD)sizeof( CP_Reply_Itemdeal );//424 
 
	g_arydwMsgSize[ CM_SAVE_WARPZONE ] = (DWORD)sizeof( CP_Save_Warpzone ); //425 
	g_arydwMsgSize[ CM_ITEM_UPGRADE ] = (DWORD)sizeof( CP_Item_Upgrade ); 	//426 
 
	g_arydwMsgSize[ CM_HORSE_NAME ] = (DWORD)sizeof( CP_Horse_Name ); 	//427 
 
	g_arydwMsgSize[ CM_HORSE_AWAY ] = (DWORD)sizeof( CP_Horse_Away ); 	//429 
	g_arydwMsgSize[ CM_HORSE_KEEPIN ] = (DWORD)sizeof( CP_Horse_Keepin ); //367	 
	g_arydwMsgSize[ CM_HORSE_KEEPOUT ] = (DWORD)sizeof( CP_Horse_Keepout );//369 
 
	g_arydwMsgSize[ CM_NORMAL_LOGOUT ] = (DWORD)sizeof( CP_Normal_Logout );//430 
 
	g_arydwMsgSize[ CM_USER_INFO ] = (DWORD)sizeof( CP_User_Info );//431 
 
	g_arydwMsgSize[ CM_REGISTER_MARK ]	= (DWORD)sizeof( CP_Register_Mark );//432 
	g_arydwMsgSize[ CM_QUEST ] = (DWORD)sizeof(CP_Quest);	//ÀÓâ¿ø Ãß°¡(Äù½ºÆ®) 
	g_arydwMsgSize[ CM_REQUESTUNIQUE ] = (DWORD)sizeof(CP_RequestUnique);	//dungeon-LIM 
 
	g_arydwMsgSize[CM_PRIVATESHOP]			= (DWORD)sizeof(CP_PrivateShop);	//ÀÓâ¿ø °³ÀλóÁ¡°ü·Ã. 
 
	g_arydwMsgSize[CM_PRIVATESHOPCONNECT]			= (DWORD)sizeof(CP_PrivateShopConnect);	//ÀÓâ¿ø °³ÀλóÁ¡°ü·Ã. 
 
	g_arydwMsgSize[CM_MAKING_ITEM]			= (DWORD)sizeof(CP_Making_Item); //YD 040624 ¾ÆÀÌÅÛ Á¦Á¶ //435 
 
	// 1117-LIM 
	g_arydwMsgSize[ CM_DUNGEON ] = (DWORD)sizeof(CP_Dungeon); //448 
	g_arydwMsgSize[ CM_DUNGEON_STORAGE ] = (DWORD)sizeof(CP_Dungeon_Storage); //449 
 
	g_arydwMsgSize[ CM_SEARCHUSER ] = (DWORD)sizeof(CP_SearchUser);		// 2004-5-16 ÀÓâ¿ø Ãß°¡//506 
 
	g_arydwMsgSize[ SSM_LOG ] = (DWORD)sizeof( MP_Log );	// 2004-4-6 Á¶µ¿¿ì//507 
 
	g_arydwMsgSize[ CM_SENDALLMESSAGE ] = (DWORD)sizeof( CP_SendAllMessage );   // 2004-3-30 Á¶µ¿¿ìÃß°¡.//508 
 
	g_arydwMsgSize[ SM_ADMIN ] = (DWORD)sizeof( SP_Admin );   // 2004-3-15 Á¶µ¿¿ìÃß°¡ : ¼­¹ö°ü¸®Å¬¶óÀÌ¾ðÆ®¿Í Åë½ÅÀ» À§ÇѰÍÀÌ¸ç »ì¾ÆÀÖÀ½À» º¸³½´Ù.//509 
 
	g_arydwMsgSize[ CM_ZONEGATEOFF ] = sizeof ( CP_ZoneGateOff );	 
 
	// Donny 2004.8.5 ±â»ç´Ü ½Ã½ºÅÛ  
	g_arydwMsgSize[ CM_SEARCHPOSFRIENDS ]             = sizeof ( CP_SearchPosFriends );	 
	g_arydwMsgSize[ CM_REQUEST_KNIGHTINFO ]           = sizeof ( CP_Request_KnightInfo );	 
	g_arydwMsgSize[ SSM_GAMEDB_REPLY_KNIGHTINFO ]     = sizeof ( MP_GAMEDB_Reply_KnightInfo ); 
	g_arydwMsgSize[ SSM_GAMEDB_REQUEST_KNIGHTINFO ]   = sizeof ( MP_GAMEDB_Request_KnightInfo ); 
 
	// ItemBill-LIM // 
	g_arydwMsgSize[ CM_ITEM_BILLING ]                 = sizeof ( CP_Item_Billing );	 
	 
	// 2004.9.21 Donny Ä£±¸½Ã½ºÅÛ 
	g_arydwMsgSize[ CM_ADDFRIENDS ]                   = sizeof ( CP_AddFriends );	 
 
	// NameChange-LIM // 
	g_arydwMsgSize[ CM_CHANGE_NAME ]				  = sizeof ( CP_Change_Name ); 
	 
	//ncash 032 20050530 
	g_arydwMsgSize[ CM_CHINA_LOGIN ]				  = sizeof ( MP_China_Login_Reply );	 
	g_arydwMsgSize[ CM_CHINA_ALERT ]				  = sizeof ( MP_China_Alert ); 
	//ncash 
 
	 
//	g_arydwMsgSize[SSM_PRIVATE_CHAT_REQUEST]	= (DWORD)sizeof(MP_Private_Chat_Request); 
//	g_arydwMsgSize[SSM_PRIVATE_CHAT_REPLY]		= (DWORD)sizeof(MP_Private_Chat_Reply); 
 
//	g_arydwMsgSize[ CM_CONNECTED ] = (DWORD)sizeof( CP_Connected ); 
//	g_arydwMsgSize[ CM_DISCONNECTED ] = (DWORD)sizeof( CP_DisConnected ); 
	for (i = 0 ; i < IOCP_MAX_CLIENT_MESSAGES ; i ++) 
	{ 
		if( g_arydwMsgSize[i] >= IOCP_MAX_SIZE_PER_MESSAGES ) 
		{ 
			char OverSize[100]; 
			memset( OverSize , 0x00 , sizeof(char) * 100); 
			sprintf( OverSize , "ServerM : %d , Size: %d" , i , g_arydwMsgSize[i] ); 
			MessageBox(NULL, OverSize ,"IOCP_MAX_SIZE_PER_MESSAGES IS OVER", MB_OK); 
		} 
//		else if(g_arydwMsgSize[i] >2500 )  
//		{ 
	//		OutputDebugString("frr"); 
	//	} 
	} 
} 
 
 
//client °¡ ¹Þ´Â°Å 
void g_SetMsgSize_fromClient() 
{ 
	int i = 0; 
	for (i = 0 ; i < IOCP_MAX_CLIENT_MESSAGES ; i ++) 	g_arydwMsgSize_fromClient[i] = 0; 
	// ¼­¹ö Á¢¼Ó  
	g_arydwMsgSize_fromClient[SSM_SERVER_READY_DONTUSE]		= (DWORD)sizeof(MP_ServerReady_dont_use); 
	g_arydwMsgSize_fromClient[SSM_SERVER_CONNECTION_CHECK]	= (DWORD)sizeof( SSP_Connection_Check );  // gr8won 6_27 
	g_arydwMsgSize_fromClient[SM_ADMIN ]					= sizeof ( SP_Admin );   // 2004-3-15 Á¶µ¿¿ìÃß°¡ : ¼­¹ö°ü¸®Å¬¶óÀÌ¾ðÆ®¿Í Åë½ÅÀ» À§ÇѰÍÀÌ¸ç »ì¾ÆÀÖÀ½À» º¸³½´Ù. 
 
	g_arydwMsgSize_fromClient[LSM_LOGIN_ERROR]			= sizeof (LSP_Login_Error); 
	g_arydwMsgSize_fromClient[LSM_GROUPSERV_INFO]		= sizeof (LSP_GroupServ_Info); 
	g_arydwMsgSize_fromClient[LSM_CHARACTER_INFO]		= sizeof (LSP_Character_Info); 
	g_arydwMsgSize_fromClient[LSM_LOGIN_OK]				= sizeof (LSP_Login_OK); 
	g_arydwMsgSize_fromClient[LSM_LOGIN_LIVE_CHECK]		= sizeof (LSP_Login_Live_Check); 
	g_arydwMsgSize_fromClient[LSM_CHARACTER_STORAGE]	= sizeof (LSP_Character_Storage); 
	g_arydwMsgSize_fromClient[SM_LOGINZONE]				= sizeof (SP_LogInZone); 
	g_arydwMsgSize_fromClient[SM_CHECK_CONNECTION]		= sizeof (SP_Check_Connection); 
	g_arydwMsgSize_fromClient[LSM_HORSE_LOAD]			= sizeof (LSP_Horse_Load); 
	 
	// ¾÷µ¥ÀÌÆ® 
	g_arydwMsgSize_fromClient[LSM_UPDATE_VERSION_CHECK]		= sizeof (LSP_Update_Version_Check); 
	g_arydwMsgSize_fromClient[LSM_UPDATE_FILE]			= sizeof (LSP_Update_File); 
	 
	// ¿öÇÁ 
	g_arydwMsgSize_fromClient[SM_WARP]					= sizeof (SP_Warp);	 
	g_arydwMsgSize_fromClient[SM_SAVE_WARPZONE]			= sizeof (SP_Save_Warpzone);	 
	 
	// À¯Àú 
	g_arydwMsgSize_fromClient[SM_APPEAR]				= sizeof (SP_Appear); 
	g_arydwMsgSize_fromClient[SM_DISAPPEAR]				= sizeof (SP_DisAppear); 
	g_arydwMsgSize_fromClient[SM_USER_DIE]				= sizeof (SP_User_Die); 
	g_arydwMsgSize_fromClient[SM_MOVE_BROADCAST]		= sizeof (SP_Move_Broadcast); 
	g_arydwMsgSize_fromClient[SM_CHR_DIR]				= sizeof (SP_Chr_Dir);	 
	g_arydwMsgSize_fromClient[SM_CHARACTER_STATUS]		= sizeof (SP_Character_Status); 
	g_arydwMsgSize_fromClient[SM_CHARACTER_INFO]		= sizeof (SP_Character_Info);	 
	g_arydwMsgSize_fromClient[SM_USER_INIT]				= sizeof (SP_User_Init); 
 
	// NPC 
	g_arydwMsgSize_fromClient[SM_NPC_APPEAR]			= sizeof (SP_NPC_Appear ); 
	g_arydwMsgSize_fromClient[SM_NPC_DISAPPEAR]			= sizeof (SP_NPC_Disappear );	 
	g_arydwMsgSize_fromClient[SM_NPC_MOVE]				= sizeof (SP_NPC_Move ); 
	g_arydwMsgSize_fromClient[SM_NPC_RESPAWN]			= sizeof (SP_NPC_Respawn); 
	g_arydwMsgSize_fromClient[SM_NPC_DIE]				= sizeof (SP_NPC_Die);	 
	g_arydwMsgSize_fromClient[SM_NPC_SPEECH]			= sizeof (SP_NPC_Speech); 
	g_arydwMsgSize_fromClient[SM_NPC_ENERGY]			= sizeof (SP_NPC_Energy); 
	g_arydwMsgSize_fromClient[SM_NPC_STATUS]			= sizeof (SP_NPC_Status);	 
 
	// ±æµå 
	g_arydwMsgSize_fromClient[SM_GUILD]					= sizeof (SP_Guild); 
	g_arydwMsgSize_fromClient[SM_GUILD_RESULT]			= sizeof (SP_Guild_Result); 
	g_arydwMsgSize_fromClient[SM_REGISTER_MARK]			= sizeof (SP_Register_Mark); 
	g_arydwMsgSize_fromClient[SM_MARK]					= sizeof (SP_Mark); 
	g_arydwMsgSize_fromClient[SM_GUILD_INFO]			= sizeof (SP_Guild_Info);	 
 
	 
	// ÀüÁ÷, ½ºÅ³¹è¿ì±â	 
	g_arydwMsgSize_fromClient[SM_CHANGE_CLASS]			= sizeof (SP_Change_Class); 
	g_arydwMsgSize_fromClient[SM_LEARN_SKILL]			= sizeof (SP_Learn_Skill); 
	g_arydwMsgSize_fromClient[SM_DELETE_SKILL]			= sizeof (SP_Delete_Skill); 
 
	// Äù½ºÆ®	 
	g_arydwMsgSize_fromClient[SM_GET_QUEST]				= sizeof (SP_Get_Quest); 
	// 1006-LIM // 
	g_arydwMsgSize_fromClient[SM_CHANGE_STATUS]			= sizeof (SP_Change_Status);	 
	g_arydwMsgSize_fromClient[SM_QUEST_CHECK]			= sizeof (SP_Quest_Check); 
	g_arydwMsgSize_fromClient[SM_QUESTITEM_DEL]			= sizeof (SP_QuestItem_Del); 
 
	g_arydwMsgSize_fromClient[SM_QUEST]					= (DWORD)sizeof(SP_Quest); 
	g_arydwMsgSize_fromClient[SM_REPLYUNIQUE]			= sizeof (SP_ReplyUnique);	//dungeon-LIM 
 
	// ÆÛÁñ 
	g_arydwMsgSize_fromClient[SM_COMPLETE_PUZZLE]		= sizeof (SP_Complete_Puzzle); 
 
	// ¸ðµåº¯È¯((Â÷Áö-³ØÅ¸),Ÿ¸£,°È±â¶Ù±â,PK) 
	g_arydwMsgSize_fromClient[SM_USE_NECTA_TAR]			= sizeof (SP_Use_Necta_Tar);	 
	g_arydwMsgSize_fromClient[SM_CHANGE_GAGE]			= sizeof (SP_Change_Gage); 
	g_arydwMsgSize_fromClient[SM_MODE_CHANGE]			= sizeof (SP_Mode_Change); 
	g_arydwMsgSize_fromClient[SM_OPERATOR_MODE]			= sizeof (SP_Operator_Mode); 
		 
	// °ø°Ý 
	g_arydwMsgSize_fromClient[SM_NPC_ATTACK_PC]			= sizeof (SP_NPC_Attack_PC); 
	g_arydwMsgSize_fromClient[SM_ATTACK_NPC]			= sizeof (SP_Attack_NPC); 
	g_arydwMsgSize_fromClient[SM_NPC_DAMAGE]			= sizeof (SP_NPC_Damage);	 
	g_arydwMsgSize_fromClient[SM_ATTACK_PC]				= sizeof (SP_Attack_PC);		 
	g_arydwMsgSize_fromClient[SM_ARROW_GOING]			= sizeof (SP_Arrow_Going); 
	g_arydwMsgSize_fromClient[SM_USE_SKILL]				= sizeof (SP_Use_Skill); 
	g_arydwMsgSize_fromClient[SM_SLIDE_NPC]				= sizeof (SP_Slide_NPC); 
	g_arydwMsgSize_fromClient[SM_SLIDE_PC]				= sizeof (SP_Slide_PC);	 
	g_arydwMsgSize_fromClient[SM_CONFIRM_ARROW]			= sizeof (SP_Confirm_Arrow);	 
	g_arydwMsgSize_fromClient[SM_BUFF_CHANGE]			= sizeof (SP_Buff_Change);	 
	g_arydwMsgSize_fromClient[SM_NPC_USE_MAGIC]			= sizeof (SP_NPC_Use_Magic);		 
	 
	// PK ½Åû 
	g_arydwMsgSize_fromClient[SM_REQUEST_PK]			= sizeof (SP_Request_PK);	 
	g_arydwMsgSize_fromClient[SM_REPLY_PK]				= sizeof (SP_Reply_PK);	 
	 
	// ¾ÆÀÌÅÛ 
	g_arydwMsgSize_fromClient[SM_CHANGE_ITEM]			= sizeof (SP_Change_Item);	 
	g_arydwMsgSize_fromClient[SM_DROP_ITEM]				= sizeof (SP_Drop_Item);	 
	g_arydwMsgSize_fromClient[SM_TAKEOFF_ITEM]			= sizeof (SP_Takeoff_Item);	 
	g_arydwMsgSize_fromClient[SM_ITEM_APPEAR]			= sizeof (SP_Item_Appear);	 
	g_arydwMsgSize_fromClient[SM_PICKUP_ITEM]			= sizeof (SP_Pickup_Item); 
	g_arydwMsgSize_fromClient[SM_ITEM_DISAPPEAR]		= sizeof (SP_Item_Disappear); 
	g_arydwMsgSize_fromClient[SM_INVEN_CHANGE]			= sizeof (SP_Inven_Change);	 
	g_arydwMsgSize_fromClient[SM_CONFIRM_POTION]		= sizeof (SP_Confirm_Potion); 
	g_arydwMsgSize_fromClient[SM_ANIMA_STATUS]			= sizeof (SP_Anima_Status); 
	g_arydwMsgSize_fromClient[SM_DELETE_EQUIP]			= sizeof (SP_Delete_Equip); 
	g_arydwMsgSize_fromClient[SM_TRY_ITEMDEAL]			= sizeof (SP_Try_Itemdeal); 
	g_arydwMsgSize_fromClient[SM_REPLY_ITEMDEAL]		= sizeof (SP_Reply_Itemdeal); 
	g_arydwMsgSize_fromClient[SM_ITEM_UPGRADE]			= sizeof (SP_Item_Upgrade); 
	g_arydwMsgSize_fromClient[SM_ITEM_LIFE]				= sizeof (SP_Item_Life); 
	g_arydwMsgSize_fromClient[SM_ITEM_REPAIR]			= sizeof (SP_Item_Repair); 
	g_arydwMsgSize_fromClient[SM_ITEM_SWAP]				= sizeof (SP_Item_Swap);	 
	 
	// â°í 
	g_arydwMsgSize_fromClient[SM_STORAGE_CHANGE]		= sizeof (SP_Storage_Change);	 
	 
	// äÆÃ 
	g_arydwMsgSize_fromClient[SM_PRIVATE_CHAT]			= sizeof (SP_Private_Chat); 
	g_arydwMsgSize_fromClient[SM_SHOUT_CHAT]			= sizeof (SP_Shout_Chat); 
	g_arydwMsgSize_fromClient[SM_PARTY_CHAT]			= sizeof (SP_Party_Chat); 
	g_arydwMsgSize_fromClient[SM_GUILD_CHAT]			= sizeof (SP_Guild_Chat); 
	g_arydwMsgSize_fromClient[SM_NORMAL_CHAT]			= sizeof (SP_Normal_Chat); 
	g_arydwMsgSize_fromClient[SM_ADMIN_CHAT]			= sizeof (SP_Admin_Chat); 
			 
	// ½Ã°£, ³¯½Ã 
	g_arydwMsgSize_fromClient[SM_TIME_CHANGE]			= sizeof (SP_Time_Change); 
	g_arydwMsgSize_fromClient[SM_WEATHER]				= sizeof (SP_Weather);	 
	 
	// ¶óÀÌºê ¾ÆÀÌÅÛ 
	g_arydwMsgSize_fromClient[SM_ITEM_CHANGE]			= sizeof (SP_Item_Change); 
	g_arydwMsgSize_fromClient[SM_ITEM_MOVE]				= sizeof (SP_Item_Move); 
	g_arydwMsgSize_fromClient[SM_ITEM_EXTINCTION]		= sizeof (SP_Item_Extinction);	 
	g_arydwMsgSize_fromClient[SM_ATTACK_ITEM]			= sizeof (SP_Attack_Item); 
	g_arydwMsgSize_fromClient[SM_DESTROY_ITEM]			= sizeof (SP_Destroy_Item);	 
	 
	// ȸº¹ 
	g_arydwMsgSize_fromClient[SM_USER_RECOVER]			= sizeof (SP_User_Recover); 
	 
	// °Å·¡ 
	g_arydwMsgSize_fromClient[SM_BUY_OK]				= sizeof (SP_Buy_OK); 
	g_arydwMsgSize_fromClient[SM_BUY_ERROR]				= sizeof (SP_Buy_Error); 
	g_arydwMsgSize_fromClient[SM_SELL_OK]				= sizeof (SP_Sell_OK); 
	g_arydwMsgSize_fromClient[SM_SELL_ERROR]			= sizeof (SP_Sell_Error); 
	g_arydwMsgSize_fromClient[SM_TRADE]					= sizeof (SP_Trade); 
 
	// À¯Àú ¼Ó¼º º¯È­ 
	g_arydwMsgSize_fromClient[SM_CHANGE_EXP]			= sizeof (SP_Change_Exp); 
	g_arydwMsgSize_fromClient[SM_LEVEL_UP]				= sizeof (SP_Level_Up); 
	g_arydwMsgSize_fromClient[SM_CHANGE_STAT]			= sizeof (SP_Change_Stat); 
	g_arydwMsgSize_fromClient[SM_CONFIRM_CASH]			= sizeof (SP_Confirm_Cash); 
	g_arydwMsgSize_fromClient[SM_CONFIRM_STAT]			= sizeof (SP_Confirm_Stat); 
	g_arydwMsgSize_fromClient[SM_CONFIRM_POINT]			= sizeof (SP_Confirm_Point); 
	g_arydwMsgSize_fromClient[SM_SKILL_UPGRADE]			= sizeof (SP_Skill_Upgrade); 
	g_arydwMsgSize_fromClient[SM_STATUS_CHANGE]			= sizeof (SP_Status_Change);	 
	 
	// ÇÕü 
	g_arydwMsgSize_fromClient[SM_TRY_UNITE]				= sizeof (SP_Try_Unite);	 
	g_arydwMsgSize_fromClient[SM_REPLY_UNITE]			= sizeof (SP_Reply_Unite);	 
	g_arydwMsgSize_fromClient[SM_SEPERATE_UNIT]			= sizeof (SP_Seperate_Unite);	 
 
	// °È°í¶Ù±â, µðÆæ½º¸ðµå 
	g_arydwMsgSize_fromClient[SM_TOGGLE_RUN]			= sizeof (SP_Toggle_Run);	 
	g_arydwMsgSize_fromClient[SM_TOGGLE_ATTACKMODE]		= sizeof (SP_Toggle_AttackMode);  
	 
	// ¸» 
	//g_arydwMsgSize_fromClient[SM_HORSE_BUY]			= sizeof (SP_Horse_Buy); 
	//g_arydwMsgSize_fromClient[SM_HORSE_SELL]			= sizeof (SP_Horse_Sell); 
	g_arydwMsgSize_fromClient[SM_HORSE_DOWN]			= sizeof (SP_Horse_Down); 
	g_arydwMsgSize_fromClient[SM_HORSE_RIDE]			= sizeof (SP_Horse_Ride);	 
	//g_arydwMsgSize_fromClient[SM_HORSE_TIME]			= sizeof (SP_Horse_Time);		 
	g_arydwMsgSize_fromClient[SM_TAMING_HORSE]			= sizeof (SP_Taming_Horse);	 
	g_arydwMsgSize_fromClient[SM_TREAT_CARROT]			= sizeof (SP_Treat_Carrot);	 
	g_arydwMsgSize_fromClient[SM_HORSE_KEEPIN]			= sizeof (SP_Horse_Keepin);	 
	g_arydwMsgSize_fromClient[SM_HORSE_KEEPOUT]			= sizeof (SP_Horse_Keepout); 
	g_arydwMsgSize_fromClient[SM_HORSE_NAME]			= sizeof (SP_Horse_Name);	 
	g_arydwMsgSize_fromClient[SM_HORSE_STATUS]			= sizeof (SP_Horse_Status); 
	g_arydwMsgSize_fromClient[SM_HORSE_AWAY]			= sizeof (SP_Horse_Away); 
	g_arydwMsgSize_fromClient[SM_HORSE_WEAR]			= sizeof (SP_Horse_Wear);	 
	 
	// ½Ã½ºÅÛ 
	g_arydwMsgSize_fromClient[SM_KILL_CLIENT]			= sizeof (SP_Kill_Client); 
	g_arydwMsgSize_fromClient[SM_ERROR_CODE]			= sizeof (SP_Error_Code); 
	g_arydwMsgSize_fromClient[SM_ERROR_MSG]				= sizeof (SP_Error_Msg); 
 
	// ÆÄƼ 
	g_arydwMsgSize_fromClient[SM_PARTY]					= sizeof (SP_Party); 
	g_arydwMsgSize_fromClient[SM_MEMBER_INFO]			= sizeof (SP_Member_Info); 
	g_arydwMsgSize_fromClient[SM_MEMBER_RECOVER]		= sizeof (SP_Member_Recover); 
 
	// »óÁ¡ / ÅÚ·¹Æ÷Æ® ó¸® 
	g_arydwMsgSize_fromClient[SM_REQUIRE_INDEX]			= sizeof (SP_Require_Index); 
	g_arydwMsgSize_fromClient[SM_TELEPORTER]			= sizeof (SP_Teleporter); 
 
	// YD 6_24 ¾ÆÀÌÅÛ Á¦Á¶ 
	g_arydwMsgSize_fromClient[SM_MAKING_ITEM]			= sizeof (SP_Making_Item); 
 
	// °³ÀλóÁ¡ 
	g_arydwMsgSize_fromClient[SM_PRIVATESHOP]			= sizeof (SP_PrivateShop);	//ÀÓâ¿ø °³ÀλóÁ¡ °ü·Ã Ãß°¡. 
	g_arydwMsgSize_fromClient[SM_PRIVATESHOPCONNECT]	= sizeof (SP_PrivateShopConnect);		//ÀÓâ¿ø °³ÀλóÁ¡ °ü·Ã Ãß°¡. 
 
	//  2004.8.4 ±â»ç´Ü½Ã½ºÅÛ  
	g_arydwMsgSize_fromClient[SM_REPLY_KNIGHTINFO]	    = sizeof (SP_Reply_KnightInfo);	 
	g_arydwMsgSize_fromClient[SM_UPDATE_KNIGHTINFO]     = sizeof (SP_Update_KnightInfo);	 
	g_arydwMsgSize_fromClient[SM_SEARCHPOSFRIENDS]      = sizeof (SP_SearchPosFriends);	 
 
	// ItemBill-LIM // 
	g_arydwMsgSize_fromClient[SM_ITEM_BILLING]          = sizeof (SP_Item_Billing);	 
 
	// 2004.9.21 Donny Ä£±¸½Ã½ºÅÛ 
	g_arydwMsgSize_fromClient[ SM_ADDFRIENDS ]          = sizeof ( SP_AddFriends );	 
 
	g_arydwMsgSize_fromClient[SM_CHANGE_NAME]		    = sizeof (SP_Change_Name);		// NameChange-LIM 
	 
	g_arydwMsgSize_fromClient[SM_BEAR_ATTACK]		    = sizeof (SP_Bear_Attack);	// 2004.11.10 Donny : º£¾î¾îÅØ	 
 
	// 1117-LIM 
	g_arydwMsgSize_fromClient[SM_DUNGEON]		    = sizeof (SP_Dungeon); 
	g_arydwMsgSize_fromClient[SM_DUNGEON_STORAGE]		    = sizeof (SP_Dungeon_Storage); 
 
	// 050311-Baek.. 
	g_arydwMsgSize_fromClient[SM_POINT_COUPON]		    = sizeof (SP_Point_Coupon);		//450 Baek.. 050311 Point Coupon 
 
	//ncash 
	g_arydwMsgSize_fromClient[SM_CHINA_USERCHECK]		    = sizeof (MP_China_Usercheck);	 
	g_arydwMsgSize_fromClient[SM_CHINA_LOGIN]		    = sizeof (MP_China_Login_Request);	 
	g_arydwMsgSize_fromClient[SM_CHINA_LOGOUT]		    = sizeof (MP_China_Logout);		 
 
 
	for (i = 0 ; i < IOCP_MAX_CLIENT_MESSAGES ; i ++) 
	{ 
		if( g_arydwMsgSize_fromClient[i] >= IOCP_MAX_SIZE_PER_MESSAGES ) 
		{ 
			char OverSize[100]; 
			memset( OverSize , 0x00 , sizeof(char) * 100); 
			sprintf( OverSize , "ClinetM : %d , Size: %d" , i , g_arydwMsgSize_fromClient[i] ); 
			MessageBox(NULL, OverSize ,"IOCP_MAX_SIZE_PER_MESSAGES IS OVER", MB_OK); 
		} 
	} 
 
}