public void Start(int room)
        {
            UpdateState("正在启动请稍等... ...");
            DouyuConfig.room = room;
            if (craw != null)
            {
                craw.DisConnect();
                craw.OnDanmaku         -= BarrageMnaager_OnReceiveMessage;
                craw.DisConnectHandler -= Craw_DisConnectHandler;
                craw.ErrorHandler      -= Auth_ErrorHandler;
                craw.LogHandler        -= Auth_LogHandler;
                craw = null;
            }
            AuthSocket auth = new AuthSocket();

            auth.OnReady += (obj, a) =>
            {
                craw                    = new CrawlerThread(auth.DanmakuServers, auth.GID, auth.RID);
                craw.OnDanmaku         += BarrageMnaager_OnReceiveMessage;
                craw.DisConnectHandler += Craw_DisConnectHandler;
                craw.ErrorHandler      += Auth_ErrorHandler;
                craw.LogHandler        += Auth_LogHandler;
                craw.Start();
                m_SyncContext.Post(UpdateState, "弹幕服务器连接成功...");
            };
            auth.ErrorHandler += Auth_ErrorHandler;
            auth.LogHandler   += Auth_LogHandler;
            auth.Start();
        }
示例#2
0
        private void button1_Click(object sender0, EventArgs e0)
        {
            string filePath1 = Application.StartupPath + "\\config.ini";

            WriteIniData("setings", "roomid", textBox2.Text, filePath1);
            int rid;

            if (!int.TryParse(textBox2.Text, out rid))
            {
                MessageBox.Show("房间号不正确");
                return;
            }
            DouyuConfig.room = rid;
            log4net.Config.XmlConfigurator.Configure();
            log.InfoFormat("弹幕捕获程序启动");
            AuthSocket auth = new AuthSocket();

            auth.OnReady += (sender, e) => {
                craw = new CrawlerThread(auth.DanmakuServers, auth.GID, auth.RID);
                craw.DisConnectHandler += Craw_DisConnectHandler;
                craw.ErrorHandler      += Auth_ErrorHandler;
                craw.LogHandler        += Auth_LogHandler;
                craw.OnDanmaku         += Craw_OnDanmaku;
                craw.Start();
            };
            auth.Start();
            auth.ErrorHandler += Auth_ErrorHandler;
            auth.LogHandler   += Auth_LogHandler;

            //Console.Read();
        }
示例#3
0
 public MainThread(
     ILogger logger,
     CrawlerThread crawlerThread,
     ProposerThread proposerThread,
     ScraperThread scraperThread
     )
 {
     _logger         = logger;
     _crawlerThread  = crawlerThread;
     _proposerThread = proposerThread;
     _scraperThread  = scraperThread;
 }
示例#4
0
        static void Main(string[] args)
        {
            DouyuConfig.room = 78561;

            AuthSocket auth = new AuthSocket();

            auth.OnReady += (sender, e) => {
                CrawlerThread craw = new CrawlerThread(auth.DanmakuServers, auth.GID, auth.RID);
                craw.DisConnectHandler += Craw_DisConnectHandler;
                craw.ErrorHandler      += Auth_ErrorHandler;
                craw.LogHandler        += Auth_LogHandler;
                craw.OnDanmaku         += Craw_OnDanmaku;
                craw.Start();
            };
            auth.Start();
            auth.ErrorHandler += Auth_ErrorHandler;
            auth.LogHandler   += Auth_LogHandler;

            Console.Read();
        }