Beispiel #1
0
 public void OnMessage(object sender, MessageEventArgs e)
 {
     try
     {
         if (!this.mIsLogin)
         {
             int    num   = e.RawData.Length - 10;
             byte[] array = new byte[num];
             Array.Copy(e.RawData, 10, array, 0, num);
             NpCloudResponseParameter <string> npCloudResponseParameter = NpMessagePack.Unpack <NpCloudResponseParameter <string> >(array);
             if (npCloudResponseParameter.body.IndexOf("200") < 0)
             {
                 this.mIsError  = true;
                 this.mErrorMsg = "サーバーへの接続に失敗しました。";
             }
             else
             {
                 this.mIsLogin = true;
             }
         }
         else
         {
             this.Receive(e.RawData);
         }
     }
     catch (Exception ex)
     {
         this.mIsError  = true;
         this.mErrorMsg = ex.Message + "\n" + ex.StackTrace;
     }
 }
Beispiel #2
0
        private void LoginResponse(int timeOut)
        {
            if (!this.mSocket.Poll(timeOut * 1000000, SelectMode.SelectRead))
            {
                throw new NpCloudException(720, "接続リクエストのタイムアウトです。");
            }
            byte[] array = new byte[1024];
            this.mSocket.Receive(array);
            int num = array.Length - 10;

            byte[] array2 = new byte[num];
            Array.Copy(array, 10, array2, 0, num);
            NpCloudResponseParameter <string> npCloudResponseParameter = NpMessagePack.Unpack <NpCloudResponseParameter <string> >(array2);

            if (npCloudResponseParameter.body.IndexOf("200") < 0)
            {
                throw new NpCloudException(721, "サーバーへの接続に失敗しました。");
            }
        }