示例#1
0
        private void buttonFindProfiles_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show(
                "Yes - If you wish to load profiles via the profiles ini file." + Environment.NewLine +
                "No  - To directly select a profiles folder.",
                "Load Profiles ini file?",
                MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);


            if (result == DialogResult.Yes)
            {
                OpenFileDialog openFileDialog1 = new OpenFileDialog();

                openFileDialog1.Title       = "Select a Firefox Profiles.ini file";
                openFileDialog1.Filter      = "INI files (*.ini)|*.ini|All files (*.*)|*.*";
                openFileDialog1.FilterIndex = 1;
                //   openFileDialog1.RestoreDirectory = true;

                if (openFileDialog1.ShowDialog() == DialogResult.OK)
                {
                    List <FirefoxProfileInfo> list = (List <FirefoxProfileInfo>) this.comboBoxProfile.DataSource;
                    FirefoxProfileInfo.FindFirefoxProfileInfosFromIniFile(openFileDialog1.FileName, list);

                    // get it to refresh!
                    this.comboBoxProfile.DataSource = null;
                    this.comboBoxProfile.DataSource = list;
                }
            }

            if (result == DialogResult.No)
            {
                FolderBrowserDialog openFolderDialog1 = new FolderBrowserDialog();

                openFolderDialog1.Description         = "Select a Firefox Profile folder";
                openFolderDialog1.ShowNewFolderButton = false;


                if (openFolderDialog1.ShowDialog() == DialogResult.OK)
                {
                    List <FirefoxProfileInfo> list    = (List <FirefoxProfileInfo>) this.comboBoxProfile.DataSource;
                    FirefoxProfileInfo        profile = new FirefoxProfileInfo();

                    profile.Name       = openFolderDialog1.SelectedPath.Substring(openFolderDialog1.SelectedPath.LastIndexOf(@"\") + 1);
                    profile.Path       = openFolderDialog1.SelectedPath;
                    profile.Default    = false;
                    profile.IsRelative = false;

                    list.Add(profile);

                    // get it to refresh!
                    this.comboBoxProfile.DataSource = null;
                    this.comboBoxProfile.DataSource = list;
                }
            }
        }
示例#2
0
        private void Form1_Load(object sender, EventArgs e)
        {
            List <FirefoxProfileInfo> profiles = FirefoxProfileInfo.FindFirefoxProfileInfos();

            this.comboBoxProfile.DataSource    = profiles;
            this.comboBoxProfile.DisplayMember = "Name";

            this.Text = "Web Site Advantage Firefox to KeePass Importer (" + KeePassUtilities.Version + ")";

            foreach (FirefoxProfileInfo profile in profiles)
            {
                if (profile.Default)
                {
                    this.comboBoxProfile.SelectedItem = profile;
                    break;
                }
            }
        }