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