예제 #1
0
        public void GenTempNewFakeProfile()
        {
            FakeProfile profile = new FakeProfileFactory().Generate();

            this.Loading.SetNewProfile(profile);
            this._renderProcessMessageHandler.SetNewProfile(profile);
        }
예제 #2
0
        private async void ResetBrowser()
        {
            SettingsViewModel settingsViewModel = this;
            bool isNeedRestart = false;

            if (Cef.IsInitialized)
            {
                if (await settingsViewModel.ShowYesOrNoDialogAsync("Запрос", "Для сброса браузера, нужен перезапуск приложения.") == MessageDialogResult.Negative)
                {
                    return;
                }
                isNeedRestart = true;
                CefSharpShutdown.ShutDown(true);
                CefSharpShutdown.KillProcess();
            }
            try
            {
                DirectoryInfo directoryInfo = new DirectoryInfo(ClientConfig.AppDataPath + "\\\\BrowserData\\cache");
                if (directoryInfo.Exists)
                {
                    directoryInfo.Delete(true);
                }
                int num = 0;
                FakeProfileFactory fakeProfileFactory = new FakeProfileFactory();
                FakeProfileCompaer fakeProfileCompaer = new FakeProfileCompaer();
                while (num < 100)
                {
                    ++num;
                    FakeProfile fakeProfile = fakeProfileFactory.Generate();
                    if (!settingsViewModel.FakeProfiles.Contains <FakeProfile>(fakeProfile, (IEqualityComparer <FakeProfile>)fakeProfileCompaer))
                    {
                        settingsViewModel.FakeProfiles.Add(fakeProfile);
                        settingsViewModel.SaveUserAgents(settingsViewModel.FakeProfiles);
                        settingsViewModel.CurrentSettings.UserSettings.FakeProfile = fakeProfile;
                        settingsViewModel.CurrentUserAgent = fakeProfile.UserAgent;
                        break;
                    }
                }
                if (num > 99)
                {
                    await settingsViewModel.ShowErrorDialogAsync("Не удалось сгенерировать уникальный UserAgent(который вы еще не использовали). Попробуйте еще раз или поменяйте настройки генерации");

                    return;
                }
                Settings.Save(settingsViewModel.CurrentSettings);
                await settingsViewModel.ShowSuccessDialogAsync("Браузер сброшен.");

                if (isNeedRestart)
                {
                    settingsViewModel.Restart();
                    Application.Current.Shutdown();
                }
            }
            catch (Exception ex)
            {
                await settingsViewModel.ShowErrorDialogAsync("Проблема со сбросом браузера! " + Environment.NewLine + ex.Message);
            }
        }