0,0 → 1,93 |
using System; |
using System.Collections.Generic; |
using System.ComponentModel; |
using System.Data; |
using System.Drawing; |
using System.Linq; |
using System.Text; |
using System.Windows.Forms; |
using System.Diagnostics; |
|
namespace SWAT_USB_App |
{ |
public partial class form_Main_Menu : Form |
{ |
public form_Main_Menu() |
{ |
Initialization.Initialize(); |
DebugText.startNewSession(); |
DebugText.appendText("Main menu form initializing"); |
DebugText.appendText("SWAT Drive detected as drive " + Initialization.pathToSWATDrive); |
// Debug: Shows the drive letter of the USB drive detected at startup |
//DEBUG: MessageBox.Show(Initialization.pathToSWATDrive, "Drive Letter", MessageBoxButtons.OK); |
InitializeComponent(); |
this.KeyPreview = true; |
this.KeyPress += new KeyPressEventHandler(this.form_Main_Menu_KeyPress); |
this.FormClosing += new FormClosingEventHandler(form_Main_Menu_FormClosing); |
if (!SettingsParser.settingsFileExist()) |
{ |
DebugText.appendText("USBSettings.xml cannot be found"); |
MessageBox.Show("USBSettings.xml cannot be found.", "Error"); |
} |
else |
SettingsParser.readSettingsFile(); |
} |
private void btn_Main_Drivers_Click(object sender, EventArgs e) |
{ |
form_Drivers.driver_Form_Instance.ShowDialog(); |
} |
private void btn_Main_Software_Click(object sender, EventArgs e) |
{ |
form_Software.software_Form_Instance.ShowDialog(); |
} |
private void btn_Main_Exit_Click(object sender, EventArgs e) |
{ |
if (System.IO.File.Exists("Debug.txt")) |
DebugText.appendText("Closing main menu form"); |
this.Close(); |
} |
private void form_Main_Menu_KeyPress(object sender, KeyPressEventArgs e) |
// Enables keyboard control for button navigation |
{ |
switch (e.KeyChar) |
{ |
case 'd': |
case 'D': |
form_Drivers.driver_Form_Instance.ShowDialog(); |
break; |
case 's': |
case 'S': |
form_Software.software_Form_Instance.ShowDialog(); |
break; |
} |
} |
void form_Main_Menu_FormClosing(object sender, FormClosingEventArgs e) |
{ |
try |
{ |
// If the application is located in the startup folder, prompt for removal on exit |
if (System.IO.Directory.GetCurrentDirectory() == System.Environment.SystemDirectory) |
{ |
// If user chooses to remove the program from startup, initializes code to delete the exe after program exits |
DialogResult result; |
result = MessageBox.Show("Would you like to remove this menu from startup?", "Remove from startup?", MessageBoxButtons.YesNo); |
if (result == DialogResult.Yes) |
{ |
ProcessStartInfo Info = new ProcessStartInfo(); |
// Calls up a hidden command prompt with a timeout of 3 seconds, automatically chooses yes to delete |
Info.Arguments = "/C choice /C Y /N /D Y /T 3 & Del \"" + Application.ExecutablePath + "\""; |
Info.WindowStyle = ProcessWindowStyle.Hidden; |
Info.CreateNoWindow = true; |
Info.FileName = "cmd.exe"; |
Process.Start(Info); |
} |
} |
} |
catch (Exception ex) |
{ |
DebugText.appendText("Exception Thrown: " + ex.ToString()); |
MessageBox.Show(ex.ToString()); |
} |
} |
} |
} |