Esempio n. 1
0
 private void showSettings(object sender, RoutedEventArgs e)
 {
     if (settings == null || settings.IsSeen)
     {
         settings = new frmSettings();
     }
     settings.Show();
 }
Esempio n. 2
0
        //add all serializable objects her
        private void Application_Startup(object sender, StartupEventArgs e)
        {
            HttpEngine.PAGE_ROOT = APP_DATA_FOLDER + @"www/";
            EventLog.LOG_FILE    = APP_DATA_FOLDER + "_log.txt";

            if (e.Args.Length > 0)
            {
                addController(e.Args[0]);
            }

            string procname = Process.GetCurrentProcess().ProcessName;
            int    procID   = Process.GetCurrentProcess().Id;

            foreach (Process p in Process.GetProcesses())
            {
                //p.main
                if (p.ProcessName.Equals(procname) && p.Id != procID)
                {
                    Application.Current.Shutdown();
                    return;
                }
            }

            if (File.Exists(App.CONFIG_PATH))
            {
                try
                {
                    App.Config = (SerializableConfig)deserialize(App.CONFIG_PATH);
                }
                catch (InvalidCastException)
                {
                    App.Config = new SerializableConfig();
                }
                if (App.Config == null || App.Config.version == 0 || App.Config.version != SerializableConfig.VERSION)
                {
                    var tmp = new SerializableConfig();
                    if (App.Config.version != SerializableConfig.VERSION)
                    {
                        try
                        {
                            tmp.convert(App.Config);
                        }
                        catch (NullReferenceException) { }
                    }
                    App.Config = tmp;
                }
            }
            if (File.Exists(App.USER_TABLE_PATH))
            {
                try
                {
                    Bouncer.UserTable = (Dictionary <String, String>)deserialize(App.USER_TABLE_PATH);
                }
                catch (InvalidCastException)
                {
                    Bouncer.UserTable = new Dictionary <String, String>();
                }
                if (Bouncer.IsUserTableNull)
                {
                    Bouncer.UserTable = new Dictionary <String, String>();
                }
            }

            Directory.CreateDirectory(CONTROLLER_DIR); // won't erase
            //buildAdministrativeController();
            //buildMediaController();
            //buildFileController();
            //buildAdministrativeControllerfree();
            //buildMediaControllerfree();
            //buildRemoteDesktopController();
            //buildTouchPadControllerFree();
            //buildTouchPadController();
            //buildSlideShowController();

            HttpEngine.addPageMutation("{RSAKEY}", BitConverter.ToString(Bouncer.rcsp.ExportParameters(false).Modulus).Replace("-", ""));
            HttpEngine.addPageMutation("{RSAEX}", BitConverter.ToString(Bouncer.rcsp.ExportParameters(false).Exponent, 0).ToString().Replace("-", ""));

            // for some reason this helps speed up the initial connecting process in some envirnments
            //ClientContainer.REGEX_MOBILE1.IsMatch("blahblah");
            //ClientContainer.REGEX_MOBILE2.IsMatch("blahblah");


            ClientView = new frmClientView(); //needs to be assigned after initialization
            LogView    = new frmLogView();
            frmSettings firstSettings = new frmSettings();

            MainWin          = new frmMain();
            MainWin.settings = firstSettings;

            myTcpServer.Connected    += ClientView.ConnectionInit;
            myTcpServer.Disconnected += ClientView.ConnectionDisconnect;

            if (Config.isUPnPonStart)
            {
                App.MainWin.settings.StartUPnP();
            }

            if (!App.Config.username.Equals(""))
            {
                if (Config.isStartInTray)
                {
                    MainWin.notifyIcon.Visible = true;
                    MainWin.showTrayMessage.Invoke();
                    return;
                }
            }

            MainWin.Show();
        }