示例#1
0
        /// <summary>
        /// Método Main
        /// </summary>
        /// <param name="args">Parâmetro args</param>
        public static void Main()
        {
            try
            {
                // Log de inicio
                Console.Title = "Point Blank - Auth";

                // Configurações
                Logger.Info("Carregando arquivo de configurações");
                ConfigFile configFile = new ConfigFile();

                // Inicializar controles do WCF
                WcfNetwork.Inicializar(configFile.CoreHost, configFile.CorePort);

                // Validar Conexão
                try
                {
                    WcfNetwork.ValidarConexao(configFile.CoreHost, configFile.CorePort);
                }
                catch (Exception exp)
                {
                    Logger.Error(exp, "Validar conexão com servidor (Core)", false);
                    return;
                }

                // Criar/Verificar estrutura padrão
                Logger.Info("Verificando necessidade de criação dos servidores");
                FactoryBo.GameServer(bo => bo.CriarEstruturaPadrao(configFile.NetworkHost, configFile.NetworkPort));

                // Teste
                IList <GameServer> listaTmp = FactoryBo.GameServer(bo => bo.ObterRelacaoTodos());

                // Inciar serviços do servidor
                new GameNetwork(configFile.NetworkHost, configFile.NetworkPort, configFile.ShowHex);
            }
            catch (ThreadAbortException)
            {
                Logger.Error("Ocorreu um erro não tratado, todas as conexões serão finalizadas");
                throw;
            }
            catch (Exception exp)
            {
                Logger.Error(exp, "Ocorreu um erro e com isso as conexões serão finalizadas", true);
            }
            finally
            {
                Process.GetCurrentProcess().WaitForExit();
            }
        }
示例#2
0
 /// <inheritdoc/>
 protected override void RunStartPacket()
 {
     this.SendPacket(new PROTOCOL_SERVER_MESSAGE_CONNECTIONSUCCESS_ACK(this, FactoryBo.GameServer(bo => bo.ObterRelacaoTodos())));
 }