private void ConfigurationBTN_Click(object sender, EventArgs e) { try { // get current executable file. if (!String.IsNullOrEmpty(ConfigurationFileTB.Text)) { FileInfo filePath = new FileInfo(ConfigurationFileTB.Text); if (filePath.Exists) { m_currentDirectory = filePath.Directory.FullName; } } // set current directory. if (m_currentDirectory == null) { m_currentDirectory = Utils.GetAbsoluteDirectoryPath("%CommonApplicationData%", false, false); } // open file dialog. OpenFileDialog dialog = new OpenFileDialog(); dialog.CheckFileExists = true; dialog.CheckPathExists = true; dialog.DefaultExt = ".exe"; dialog.Filter = "Configuration Files (*.xml)|*.xml|All Files (*.*)|*.*"; dialog.Multiselect = false; dialog.ValidateNames = true; dialog.Title = "Select Application Configuration File"; dialog.FileName = null; dialog.InitialDirectory = m_currentDirectory; dialog.RestoreDirectory = true; if (dialog.ShowDialog() != DialogResult.OK) { return; } FileInfo configurationFile = new FileInfo(dialog.FileName); m_currentDirectory = configurationFile.Directory.FullName; ConfigurationFileTB.Text = configurationFile.FullName; m_application.SetConfigurationFile(configurationFile.FullName); // update the control. Update(m_application); } catch (Exception exception) { GuiUtils.HandleException(this.Text, System.Reflection.MethodBase.GetCurrentMethod(), exception); } }