Exemplo n.º 1
0
        /// <summary>
        /// TCP 客户端套接字初始化处理
        /// </summary>
        /// <param name="parameter"></param>
        private void onClientSocket(AutoCSer.Net.TcpServer.ClientSocketEventParameter parameter)
        {
            try
            {
                if (parameter.Type == AutoCSer.Net.TcpServer.ClientSocketEventParameter.EventType.SetSocket)
                {
                    try
                    {
                        if (logKeepCallback != null)
                        {
                            logKeepCallback.Dispose();
                            logKeepCallback = null;
                        }
#if NoAutoCSer
                        throw new Exception();
#else
                        ClientId        = TcpInternalClient.register();
                        logKeepCallback = TcpInternalClient.getLog(ClientId, onLog);
#endif
                        IsClient = true;
                        return;
                    }
                    catch (Exception error)
                    {
                        AutoCSer.Log.Pub.Log.Add(AutoCSer.Log.LogType.Error, error);
                        checkSocketVersion.DisposeSocket();
                    }
                    IsClient = false;
                }
            }
            finally
            {
                Client.OnClient(parameter.Type, name);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// TCP 客户端套接字初始化处理
        /// </summary>
        /// <param name="parameter"></param>
        private void onClientSocket(AutoCSer.Net.TcpServer.ClientSocketEventParameter parameter)
        {
            try
            {
                switch (parameter.Type)
                {
                case AutoCSer.Net.TcpServer.ClientSocketEventParameter.EventType.SetSocket:
                    try
                    {
                        if (logKeepCallback != null)
                        {
                            logKeepCallback.Dispose();
                            logKeepCallback = null;
                        }
#if NoAutoCSer
                        throw new Exception();
#else
                        //ClientId = TcpInternalClient.register();
                        //logKeepCallback = TcpInternalClient.getLog(ClientId, onLog);
                        logKeepCallback = TcpInternalClient.getLog(onLog);
#endif
                        IsClient = true;
                        return;
                    }
                    catch (Exception error)
                    {
                        AutoCSer.LogHelper.Exception(error, null, LogLevel.Exception | LogLevel.AutoCSer);
                        checkSocketVersion.DisposeSocket();
                    }
                    IsClient = false;
                    break;

                case AutoCSer.Net.TcpServer.ClientSocketEventParameter.EventType.SocketDisposed:
                    IsClient = false;
                    break;
                }
            }
            finally
            {
                Client.OnClient(parameter.Type, name);
            }
        }