Subversion Repositories Code-Repo

Compare Revisions

No changes between revisions

Ignore whitespace Rev 62 → Rev 65

/SWAT USB App/trunk/SWAT USB App/form_Software.resx
File deleted
\ No newline at end of file
/SWAT USB App/trunk/SWAT USB App/AboutBox.Designer.cs
File deleted
/SWAT USB App/trunk/SWAT USB App/AboutBox.cs
File deleted
/SWAT USB App/trunk/SWAT USB App/form_Drivers.Designer.cs
File deleted
\ No newline at end of file
/SWAT USB App/trunk/SWAT USB App/form_Drivers.cs
File deleted
/SWAT USB App/trunk/SWAT USB App/form_Software.cs
File deleted
/SWAT USB App/trunk/SWAT USB App/SpaceInvader.ico
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/SWAT USB App/trunk/SWAT USB App/SpaceInvader.ico
Property changes:
Deleted: svn:mime-type
-application/octet-stream
\ No newline at end of property
/SWAT USB App/trunk/SWAT USB App/DebugText.cs
File deleted
/SWAT USB App/trunk/SWAT USB App/form_Software.Designer.cs
File deleted
\ No newline at end of file
/SWAT USB App/trunk/SWAT USB App/form_Main_Menu.resx
File deleted
\ No newline at end of file
/SWAT USB App/trunk/SWAT USB App/form_Main_Menu.cs
File deleted
/SWAT USB App/trunk/SWAT USB App/AboutBox.resx
File deleted
\ No newline at end of file
/SWAT USB App/trunk/SWAT USB App/form_Main_Menu.Designer.cs
File deleted
/SWAT USB App/trunk/SWAT USB App/form_Drivers.resx
File deleted
\ No newline at end of file
/SWAT USB App/trunk/SWAT USB App/About_Box_Form.Designer.cs
0,0 → 1,186
namespace SWAT_USB_App
{
partial class About_Box_Form
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
 
/// <summary>
/// Clean up any resources being used.
/// </summary>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
 
#region Windows Form Designer generated code
 
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(About_Box_Form));
this.tableLayoutPanel = new System.Windows.Forms.TableLayoutPanel();
this.logoPictureBox = new System.Windows.Forms.PictureBox();
this.labelProductName = new System.Windows.Forms.Label();
this.labelVersion = new System.Windows.Forms.Label();
this.labelCopyright = new System.Windows.Forms.Label();
this.labelCompanyName = new System.Windows.Forms.Label();
this.textBoxDescription = new System.Windows.Forms.TextBox();
this.okButton = new System.Windows.Forms.Button();
this.tableLayoutPanel.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.logoPictureBox)).BeginInit();
this.SuspendLayout();
//
// tableLayoutPanel
//
this.tableLayoutPanel.ColumnCount = 2;
this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33F));
this.tableLayoutPanel.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 67F));
this.tableLayoutPanel.Controls.Add(this.logoPictureBox, 0, 0);
this.tableLayoutPanel.Controls.Add(this.labelProductName, 1, 0);
this.tableLayoutPanel.Controls.Add(this.labelVersion, 1, 1);
this.tableLayoutPanel.Controls.Add(this.labelCopyright, 1, 2);
this.tableLayoutPanel.Controls.Add(this.labelCompanyName, 1, 3);
this.tableLayoutPanel.Controls.Add(this.textBoxDescription, 1, 4);
this.tableLayoutPanel.Controls.Add(this.okButton, 1, 5);
this.tableLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel.Location = new System.Drawing.Point(9, 9);
this.tableLayoutPanel.Name = "tableLayoutPanel";
this.tableLayoutPanel.RowCount = 6;
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10F));
this.tableLayoutPanel.Size = new System.Drawing.Size(417, 265);
this.tableLayoutPanel.TabIndex = 0;
//
// logoPictureBox
//
this.logoPictureBox.Dock = System.Windows.Forms.DockStyle.Fill;
this.logoPictureBox.Image = ((System.Drawing.Image)(resources.GetObject("logoPictureBox.Image")));
this.logoPictureBox.Location = new System.Drawing.Point(3, 3);
this.logoPictureBox.Name = "logoPictureBox";
this.tableLayoutPanel.SetRowSpan(this.logoPictureBox, 6);
this.logoPictureBox.Size = new System.Drawing.Size(131, 259);
this.logoPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
this.logoPictureBox.TabIndex = 12;
this.logoPictureBox.TabStop = false;
//
// labelProductName
//
this.labelProductName.Dock = System.Windows.Forms.DockStyle.Fill;
this.labelProductName.Location = new System.Drawing.Point(143, 0);
this.labelProductName.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0);
this.labelProductName.MaximumSize = new System.Drawing.Size(0, 17);
this.labelProductName.Name = "labelProductName";
this.labelProductName.Size = new System.Drawing.Size(271, 17);
this.labelProductName.TabIndex = 19;
this.labelProductName.Text = "Product Name";
this.labelProductName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// labelVersion
//
this.labelVersion.Dock = System.Windows.Forms.DockStyle.Fill;
this.labelVersion.Location = new System.Drawing.Point(143, 26);
this.labelVersion.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0);
this.labelVersion.MaximumSize = new System.Drawing.Size(0, 17);
this.labelVersion.Name = "labelVersion";
this.labelVersion.Size = new System.Drawing.Size(271, 17);
this.labelVersion.TabIndex = 0;
this.labelVersion.Text = "Version";
this.labelVersion.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// labelCopyright
//
this.labelCopyright.Dock = System.Windows.Forms.DockStyle.Fill;
this.labelCopyright.Location = new System.Drawing.Point(143, 52);
this.labelCopyright.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0);
this.labelCopyright.MaximumSize = new System.Drawing.Size(0, 17);
this.labelCopyright.Name = "labelCopyright";
this.labelCopyright.Size = new System.Drawing.Size(271, 17);
this.labelCopyright.TabIndex = 21;
this.labelCopyright.Text = "Copyright";
this.labelCopyright.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// labelCompanyName
//
this.labelCompanyName.Dock = System.Windows.Forms.DockStyle.Fill;
this.labelCompanyName.Location = new System.Drawing.Point(143, 78);
this.labelCompanyName.Margin = new System.Windows.Forms.Padding(6, 0, 3, 0);
this.labelCompanyName.MaximumSize = new System.Drawing.Size(0, 17);
this.labelCompanyName.Name = "labelCompanyName";
this.labelCompanyName.Size = new System.Drawing.Size(271, 17);
this.labelCompanyName.TabIndex = 22;
this.labelCompanyName.Text = "Company Name";
this.labelCompanyName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
//
// textBoxDescription
//
this.textBoxDescription.Dock = System.Windows.Forms.DockStyle.Fill;
this.textBoxDescription.Location = new System.Drawing.Point(143, 107);
this.textBoxDescription.Margin = new System.Windows.Forms.Padding(6, 3, 3, 3);
this.textBoxDescription.Multiline = true;
this.textBoxDescription.Name = "textBoxDescription";
this.textBoxDescription.ReadOnly = true;
this.textBoxDescription.ScrollBars = System.Windows.Forms.ScrollBars.Both;
this.textBoxDescription.Size = new System.Drawing.Size(271, 126);
this.textBoxDescription.TabIndex = 23;
this.textBoxDescription.TabStop = false;
this.textBoxDescription.Text = "Description";
//
// okButton
//
this.okButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.okButton.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.okButton.Location = new System.Drawing.Point(339, 239);
this.okButton.Name = "okButton";
this.okButton.Size = new System.Drawing.Size(75, 23);
this.okButton.TabIndex = 24;
this.okButton.Text = "&OK";
//
// AboutBox
//
this.AcceptButton = this.okButton;
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(435, 283);
this.Controls.Add(this.tableLayoutPanel);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "AboutBox";
this.Padding = new System.Windows.Forms.Padding(9);
this.ShowIcon = false;
this.ShowInTaskbar = false;
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
this.Text = "AboutBox";
this.tableLayoutPanel.ResumeLayout(false);
this.tableLayoutPanel.PerformLayout();
((System.ComponentModel.ISupportInitialize)(this.logoPictureBox)).EndInit();
this.ResumeLayout(false);
 
}
 
#endregion
 
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel;
private System.Windows.Forms.Label labelProductName;
private System.Windows.Forms.Label labelVersion;
private System.Windows.Forms.Label labelCopyright;
private System.Windows.Forms.Label labelCompanyName;
private System.Windows.Forms.TextBox textBoxDescription;
private System.Windows.Forms.Button okButton;
private System.Windows.Forms.PictureBox logoPictureBox;
}
}
/SWAT USB App/trunk/SWAT USB App/About_Box_Form.cs
0,0 → 1,30
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Linq;
using System.Reflection;
using System.Windows.Forms;
 
namespace SWAT_USB_App
{
partial class About_Box_Form : Form
{
public About_Box_Form()
{
InitializeComponent();
this.Text = "Program Info";
this.labelProductName.Text = "SWAT USB App";
this.labelVersion.Text = "Version 2.2.2";
this.labelCopyright.Text = "Copyright to Kevin Lee @ Virginia Tech";
this.labelCompanyName.Text = "Author: Kevin Lee";
this.textBoxDescription.Text = "This program has been written by Kevin Lee for use " +
"in Virginia Tech's SWAT (Software Assistance and " +
"Triage) office at Torgeson 2080. Distribution without " +
"notification to the author is strongly discouraged. " +
"Claiming credit for this program without being the " +
"author is prohibited. Questions and comments can be " +
"sent to klee482@vt.edu.";
}
}
}
/SWAT USB App/trunk/SWAT USB App/About_Box_Form.resx
0,0 → 1,366
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
 
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="logoPictureBox.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAAIIAAAEECAYAAADkneyMAAAABGdBTUEAAOD8YVAtlgAAAvdpQ0NQUGhv
dG9zaG9wIElDQyBwcm9maWxlAAA4y2NgYJ7g6OLkyiTAwFBQVFLkHuQYGREZpcB+noGNgZkBDBKTiwsc
AwJ8QOy8/LxUBlTAyMDw7RqIZGC4rAsyi4E0wJoMtBhIHwBio5TU4mQg/QWI08tLCoDijDFAtkhSNphd
AGJnhwQ5A9ktDAxMPCWpFSC9DM75BZVFmekZJQqGlpaWCo4p+UmpCsGVxSWpucUKnnnJ+UUF+UWJJakp
QLVQO0CA1yW/RME9MTNPwchAlYHKABSOEBYifBBiCJBcWlQGD0oGBgEGBQYDBgeGAIZEhnqGBQxHGd4w
ijO6MJYyrmC8xyTGFMQ0gekCszBzJPNC5jcsliwdLLdY9VhbWe+xWbJNY/vGHs6+m0OJo4vjC2ci5wUu
R64t3JrcC3ikeKbyCvFO4hPmm8Yvw79YQEdgh6Cr4BWhVKEfwr0iKiJ7RcNFv4hNEjcSvyJRISkneUwq
X1pa+oRMmay67C25PnkX+T8KWxULlfSU3iqvVSlQNVH9qXZQvUsjVFNJ84PWAe1JOqm6VnqCeq/0jxgs
MKw1ijG2NZE3ZTZ9aXbBfKfFEssJVnXWuTZxtoF2rvbWDsaOOk5qzkouCq7ybgruyh7qnrpeJt42Pu6+
wX4J/vkB9YETg5YG7wq5GPoynClCLtIqKiK6ImZm7J64BwlsibpJYckNKWtSb6ZzZFhkZmbNzb6Yy55n
n19RsKnwXbF2SVbpqrI3FfqVJVW7ahhrveqm1j9s1GuqaT7bKtdW2H60U7qrqPt0r2pfY//diTaTZk/+
OzV+2uEZGjP7Z32fkzD39HzzBUsXiSxuXfJtWebyeytDVp1e47J233rLDds2mWzestVk2/YdVjv373bd
c3Zf2P4HB3MO/TzSfkz8+IqT1qfOnUk+++v8pIval45eSbz67/qcmza37t6pv6d8/8TDvMdiT/Y/y3wh
8vLg6/y38u8ufGj6ZPr51dcF38N/Cvw69af1n+P//wANAA8013ReGAAAAAlwSFlzAAA45AAAOOQB7FYm
xQAANQ1JREFUeF7t3VePNEfVB3B/Bb4DQkJwbQkhhC+MxAUW2GCTjbGNeRzAgI0DmJxNzjnnnHMwyeSc
c44m58y8/BqO33I9Hap7umerd7ek1e7OdFd31fnXyafqmGOOOWZz+HM4B//BwOEkHM5Bg4H/AuGwHcwZ
SBbBIRAOJgT+O+pDIBxk6idjPwTCIRAOOcIhBv5/Bg48R/jnP/+5+c1vfrP51re+tfn4xz+++cAHPrD5
2Mc+tvnmN7+5+d3vfndgsHJggPCvf/1r89WvfnXzvve9b/OqV71q87KXvWzzrGc9a/PYxz5288xnPnPz
5je/efPWt761+c7Pc5/73M3DHvawzSMe8YjNs5/97M2Xv/zlDdDs17bvgfDLX/6yIeyjH/3ozdOe9rTN
u9/97s2nP/3pzXe/+93NT37yk81f//rXXtq6/ytf+UoDnMc//vGb173udZsf//jH+w4P+xYIv//975sV
/8AHPrBZ6X/4wx+2Jt5f/vKXzWc+85mGQzzhCU/YXHnllVv3WUsH+xIIb3nLWzb3v//9N2984xs3//73
vxeZ6+9///ubF77whQ2n+eEPf7jIM3bZ6b4Cwne+853Nfe9734YTzMEBSghBqXzqU5+6+dCHPlRyebXX
7BsgWP2XXnrp5nOf+9zOJ5si+vznP3/znOc8Z7UK5b4AAplN8//HP/6xcxCkD3zb297WWBlDCuievmTH
w1cPhBe96EXNaqylvfe9723AsDZTc9VA4BN4+tOfXgsGrn6PN7zhDZvnPe951b1X3wutFgi8f4985COr
XXn8DmsyL1cJhG9/+9ubCy64oGoXMH2Fr4Els4a2OiCQvfe5z32a2EDt7Wc/+1kjuv72t7/V/qrry0d4
xzvesSr5y53NLV17WxVH4CR68IMfvDrzjGmLO9TcVgWEV7ziFRvu47U1kcuXvvSlVb/2aoCAG1x++eWr
kLc5xcU7+DuuuuqqasGwGiCIIPpZqn3ve99rwtQPfehDm59XvvKVm7///e+zPQ5XwNFqbasAAkuBbiC0
vESTlCJYJXCE8/jhrBK7kL00R/vzn/+8eeITn7gRyq6xrQIInEdLeere8573NCKnLU7xwQ9+cPOkJz1p
NrrRbz7ykY/M1t+cHa0CCBwzS8T8//SnPzU+iT47n/dyrlXMESZCWWOrHggULNHFJdqHP/zhQU4j8eTn
P//5LI8XrmZKAmBtrXogvP/9799g39s0Wvuvf/3ro5JVAEzmcldz32Me85jNH//4x20ef4175U184Qtf
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
</value>
</data>
</root>
/SWAT USB App/trunk/SWAT USB App/Debug.cs
0,0 → 1,56
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Windows.Forms;
 
namespace SWAT_USB_App
{
class Debug
{
private static string debugLocation = Initialization.pathToSWATDrive + "Debug.txt";
public static void appendText(string text)
{
// Appends passed string into Debug.txt
try
{
using (StreamWriter sw = File.AppendText(debugLocation))
{
sw.Write("[" + DateTime.Now.ToLongDateString() + " ; " + DateTime.Now.ToLongTimeString() + "] -- ");
sw.Write(text + "\r\n");
sw.Flush();
}
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
}
public static void createNewDebugTxt()
{
// Deletes old Debug.txt and creates a new one
if (File.Exists(debugLocation))
{
File.Delete(debugLocation);
File.Create(debugLocation);
}
}
public static void startNewSession()
{
try
{
using (StreamWriter sw = File.AppendText(debugLocation))
{
sw.Write("-- New Debug Session --\r\n");
sw.Flush();
}
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
}
 
}
}
/SWAT USB App/trunk/SWAT USB App/Drivers_Form.Designer.cs
0,0 → 1,100
namespace SWAT_USB_App
{
partial class Drivers_Form
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
 
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
 
#region Windows Form Designer generated code
 
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Drivers_Form));
this.btn_Cancel = new System.Windows.Forms.Button();
this.btn_Ok = new System.Windows.Forms.Button();
this.groupBox_DriverList = new System.Windows.Forms.GroupBox();
this.SuspendLayout();
//
// btn_Cancel
//
this.btn_Cancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Cancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.btn_Cancel.FlatStyle = System.Windows.Forms.FlatStyle.System;
this.btn_Cancel.Location = new System.Drawing.Point(100, 37);
this.btn_Cancel.Name = "btn_Cancel";
this.btn_Cancel.Size = new System.Drawing.Size(62, 24);
this.btn_Cancel.TabIndex = 3;
this.btn_Cancel.Text = "Cancel";
this.btn_Cancel.UseVisualStyleBackColor = true;
this.btn_Cancel.Click += new System.EventHandler(this.btn_Driver_Cancel_Click);
//
// btn_Ok
//
this.btn_Ok.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Ok.FlatStyle = System.Windows.Forms.FlatStyle.System;
this.btn_Ok.Location = new System.Drawing.Point(32, 37);
this.btn_Ok.Name = "btn_Ok";
this.btn_Ok.Size = new System.Drawing.Size(62, 24);
this.btn_Ok.TabIndex = 2;
this.btn_Ok.Text = "Ok";
this.btn_Ok.UseVisualStyleBackColor = true;
this.btn_Ok.Click += new System.EventHandler(this.btn_Driver_Ok_Click);
//
// groupBox_DriverList
//
this.groupBox_DriverList.Location = new System.Drawing.Point(12, 12);
this.groupBox_DriverList.Name = "groupBox_DriverList";
this.groupBox_DriverList.Size = new System.Drawing.Size(150, 19);
this.groupBox_DriverList.TabIndex = 1;
this.groupBox_DriverList.TabStop = false;
this.groupBox_DriverList.Text = "Choose Your Tablet Model";
//
// form_Drivers
//
this.AcceptButton = this.btn_Ok;
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.CancelButton = this.btn_Cancel;
this.ClientSize = new System.Drawing.Size(174, 73);
this.Controls.Add(this.btn_Ok);
this.Controls.Add(this.groupBox_DriverList);
this.Controls.Add(this.btn_Cancel);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.Name = "form_Drivers";
this.ShowInTaskbar = false;
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Drivers";
this.ResumeLayout(false);
 
}
 
#endregion
 
private System.Windows.Forms.Button btn_Cancel;
private System.Windows.Forms.Button btn_Ok;
private System.Windows.Forms.GroupBox groupBox_DriverList;
 
 
}
}
/SWAT USB App/trunk/SWAT USB App/Drivers_Form.cs
0,0 → 1,165
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;
using System.Threading;
 
namespace SWAT_USB_App
{
public partial class Drivers_Form : Form
{
private static List<Process> toInstall = new List<Process>();
private static List<RadioButton> formRadioButton = new List<RadioButton>();
public Drivers_Form()
{
InitializeComponent();
try
{
if (SettingsParser.DriversList.Count() == 0)
{
Debug.appendText("No drivers were found in USBSettings.xml");
MessageBox.Show("No drivers were found in USBSettings.xml");
this.Close();
}
else
{
bool modelFound = false;
Debug.appendText("Driver form initializing");
if (SettingsParser.driverCheckForMatchingModel)
Initialization.GetModelNumber();
// Draws the form with a radiobutton for each driver specified in the text file
// Location placeholder
int nextXLocation = 6, nextYLocation = 19;
// Updates the groupbox size to hold all the radiobuttons
this.groupBox_DriverList.Size = new Size(SettingsParser.driverFormWidth - 31, 19 + SettingsParser.DriversList.Count() * 23);
// Updates the window size to hold all the radiobuttons + buttons
this.Size = new Size(SettingsParser.driverFormWidth, 101 + SettingsParser.DriversList.Count() * 23);
formRadioButton.Clear();
// Adds a radiobutton for each software item, adds rdoBtn to list formRadioButton
for (int i = 0; i < SettingsParser.DriversList.Count(); i++)
{
RadioButton rdoBtn = new RadioButton();
rdoBtn.Name = "rdo_" + SettingsParser.DriversList[i].Name;
rdoBtn.AutoSize = true;
// Removes the brackets from the name
rdoBtn.Text = SettingsParser.DriversList[i].Name;
rdoBtn.Location = new Point(nextXLocation, nextYLocation);
// Increments the location placeholder for the next radiobutton
nextYLocation += 23;
this.groupBox_DriverList.Controls.Add(rdoBtn);
formRadioButton.Add(rdoBtn);
if (SettingsParser.driverCheckForMatchingModel)
// If model is detected, check the correct entry
if (SettingsParser.DriversList[i].Name.ToLower() == Initialization.computerModel.ToLower() && modelFound == false)
{
modelFound = true;
rdoBtn.Checked = true;
}
}
if (SettingsParser.driverCheckForMatchingModel)
{
if (modelFound == true)
{
MessageBox.Show("Drivers were found for this computer.\n" +
"Press OK to continue then OK to install drivers.");
}
else
{
MessageBox.Show("Drivers were not found for this computer.\n" +
"Please go to the manufacturer's site and manually\n" +
"download the drivers for this computer.");
}
}
}
}
catch (Exception ex)
{
Debug.appendText("Exception Thrown: " + ex.ToString());
MessageBox.Show(ex.ToString());
}
}
private void updateToInstallList()
{
try
{
Debug.appendText("Updating list of processes to run from list of drivers checked");
toInstall.Clear();
// Updates list toInstall with processes for each software checked
for (int i = 0; i < formRadioButton.Count(); i++)
{
if (formRadioButton[i].Checked)
{
string[] temp = null;
// Pulls the setup locations
for (int j = 0; j < SettingsParser.DriversList.Count(); j++)
if (SettingsParser.DriversList[j].Name == formRadioButton[i].Text)
{
temp = SettingsParser.DriversList[j].SetupFileLocation;
break;
}
for (int j = 0; j < temp.Count(); j += 2)
{
Process proc = new Process();
proc.StartInfo.FileName = Initialization.pathToSWATDrive + temp[j];
proc.StartInfo.Arguments = temp[j + 1];
toInstall.Add(proc);
}
}
}
}
catch (Exception e)
{
Debug.appendText("Exception Thrown: " + e.ToString());
MessageBox.Show(e.ToString());
}
}
private void startDriverInstallation(List<Process> toInstall, int ID)
{
Debug.appendText("Starting to install drivers from list of processes");
try
{
this.WindowState = FormWindowState.Minimized;
// Goes through list toInstall and runs each process after the previous one ends
int tempID = ID;
if (tempID < toInstall.Count)
{
Debug.appendText("Running setup " + toInstall[ID].StartInfo.FileName + " with arguments " + toInstall[ID].StartInfo.Arguments);
toInstall[ID].Start();
while (!toInstall[ID].HasExited)
{
// Waits for installer to finish before starting the next one
Thread.Sleep(3000);
}
if (toInstall[ID].HasExited)
{
Debug.appendText("Setup is detected as finished, running next setup");
tempID++;
startDriverInstallation(toInstall, tempID);
}
}
this.WindowState = FormWindowState.Normal;
}
catch (Exception e)
{
Debug.appendText("Exception Thrown: " + e.ToString());
MessageBox.Show(e.ToString());
}
}
private void btn_Driver_Ok_Click(object sender, EventArgs e)
{
updateToInstallList();
startDriverInstallation(toInstall, 0);
this.Close();
}
private void btn_Driver_Cancel_Click(object sender, EventArgs e)
{
Debug.appendText("Closing driver form");
this.Close();
}
}
}
/SWAT USB App/trunk/SWAT USB App/Drivers_Form.resx
0,0 → 1,226
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
 
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAIAMDAAAAEACACoDgAAJgAAACAgAAABAAgAqAgAAM4OAAAoAAAAMAAAAGAAAAABAAgAAAAAAAAJ
AAAAAAAAAAAAAAABAAAAAQAAAAAAAAYGBgAKCgoADw8PABQUFAAaGhoAHx8fACQkJAApKSkALi4uADAw
MAA0NDQAPj4+AEhISABOTk4AYmJiAGdnZwBtbW0AfHx8AIKCggCPj48AkZGRAJycnAChoaEAsLCwALW1
tQDAwMAAy8vLANDQ0ADV1dUA2traAN/f3wDk5OQA6urqAO/v7wD09PQA/v7+AAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAJCQkJAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAJCQkJAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
JCQkJAAAAAAAAAAAAAAAAAAAAAAAACQkJCQAAAAAAAAAAAAAAAAAAAAAAAAkJCQkAAAAAAAAAAAAAAAA
AAAAAAAAAAAAACQkJCQAAAAAAAAAAAAAAAAAAAAAAAAkJCQkAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQk
JCQAAAAAAAAAAAAAAAAAAAAAAAAkJCQkAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQkJCQAAAAAAAAAAAAA
AAAAAAAAAAAkJCQkAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQkJCQAAAAAAAAAAAAAAAAAAAAAAAAkJCQk
AAAAAAAAAAAAAAAAAAAAAAAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJB8AAAAAAAAA
AAAAAAAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJB8AAAAAAAAAAAAAAAAkJCQkJCQk
JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJB8AAAAAAAAAAAAAAAAkJCQkJCQkJCQkJCQkJCQkJCQk
JCQkJCQkJCQkJCQkJCQkJB8AAAAAAAAAAAAAAAAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQk
JCQkJCEAAAAAAAAAACQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkAAAA
ACQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkAAAAACQkJCQkJCQkJCQk
JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkAAAAACQkJCQkJCQkJCQkJCQAAAAAJCQkJCQk
JCQkJAAAAAAkJCQkJCQkJCQkJCQkAAAAACQkJCQkJCQkJCQkJCQAAAAAJCQkJCQkJCQkJAAAAAAkJCQk
JCQkJCQkJCQkAAAAACQkJCQkJCQkJCQkJCQAAAAAJCQkJCQkJCQkJAAAAAAkJCQkJCQkJCQkJCQkAAAA
ACQkJCQkJCQkJCQkJCQAAAAAJCQkJCQkJCQkJAAAAAAkJCQkJCQkJCQkJCQkAAAAACQkJCQAAAAAJCQk
JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAAAAAAkJCQkAAAAACQkJCQAAAAAJCQkJCQkJCQkJCQkJCQk
JCQkJCQkJCQkJCQkJAAAAAAkJCQkAAAAACQkJCQAAAAAJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQk
JAAAAAAkJCQkAAAAACQkJCQAAAAAJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAAAAAAkJCQkAAAA
ACQkJCQAAAAAAAAAACQkJCQAAAAAAAAAAAAAAAAkJCQkAAAAAAAAAAAkJCQkAAAAACQkJCQAAAAAAAAA
ACQkJCQAAAAAAAAAAAAAAAAkJCQkAAAAAAAAAAAkJCQkAAAAACQkJCQAAAAAAAAAACQkJCQAAAAAAAAA
AAAAAAAkJCQkAAAAAAAAAAAkJCQkAAAAACQkJCQAAAAAAAAAACQkJCQAAAAAAAAAAAAAAAAkJCQkAAAA
AAAAAAAkJCQkAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAA
AAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQk
JAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAA
AAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///////wAA////////
AAD///////8AAP///////wAA+B///+B/AAD4H///4H8AAPgH///gHwAA+Af//+AfAAD4Af//AB8AAPgA
//8AHwAA/gB//wAfAAD+AH//AB8AAP8Af/8A/wAA8AAAAAA/AADwAAAAAD8AAPAAAAAADwAA8AAAAAAP
AADwAAAAAA8AAAAAAAAAAwAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAABAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAMAAAAAA
AAAAwAAAAAAAAACAD/AHAAAAAIAP8AMAAADAgA/wAMAAAMCAD/gAwAAA/4D//AD/AAD/gP//AP8AAP/A
//+A/wAA/8D//4D/AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////
AAD///////8AACgAAAAgAAAAQAAAAAEACAAAAAAAAAQAAAAAAAAAAAAAAAEAAAABAAAAAAAABQUFABAQ
EAAUFBQAICAgACQkJAAvLy8ANjY2AD8/PwBDQ0MAREREAEhISABMTEwAUlJSAFZWVgBaWloAXV1dAGJi
YgBoaGgAbW1tAHx8fACCgoIAkZGRAJaWlgCcnJwAoaGhALCwsAC2trYAwMDAAMrKygDV1dUA2traAN/f
3wDq6uoA7+/vAPT09AD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAAAAAAAAAf
JAAAAAAAAAAAAAIAJCQAAAAAAAAAAAAAAAAAAAAAAB8kAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAA
ACQkAAAAAAAAAAAAAAAAAAAAJCQAAAAAAAAAAAAAAAAAJCQAAAAAAAAAAAAAAAAAAAAkJAAAAAAAAAAA
AAAAAAAkJAAAAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAAJCQkJCQkJCQk
JCQkJCQkJCQkJCQkJCQAAAAAAAAAAAAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAAAAAAAAAAAACQkJCQk
JCQkJCQkJCQkJCQkJCQkJCQkAAAAAAAAJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQAAAAkJCQk
JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAAAACQkJCQkJCQkAAAAJCQkJCQkJAAAACQkJCQkJCQkAAAA
JCQkJCQkJCQAAAAkJCQkJCQkAAAAJCQkJCQkJCQAAAAkJAAAAAAkJAAAACQkJCQkJCQAAAAkJAAAAAAk
JAAAACQkAAAAACQkJCQkJCQkJCQkJCQkJCQkAAAAACQkAAAAJCQAAAAAJCQkJCQkJCQkJCQkJCQkJCQA
AAAAJCQAAAAkJAAAAAAAACQkJAAAAAAAAAAkJCQAAAAAAAAkJAAAACQkAAAAAAAAJCQkAAAAAAAAACQk
JAAAAAAAACQkAAAAJCQAAAAAAAAkJCQAAAAAAAAAJCQkAAAAAAAAJCQAAAAAAAAAAAAkJAAAAAAAAAAA
AAAAAAAkJAAAAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
/////////////+H//h/gf/4P4D/4D/Af+A/4H/gP+B/4P+AAAA/gAAAH4AAABwAAAAcAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAABAAAIAYAACAEA8BghAPAMIQD4DD8H/g//h/8P///////////////////
////////
</value>
</data>
</root>
/SWAT USB App/trunk/SWAT USB App/Main_Menu_Form.Designer.cs
0,0 → 1,125
namespace SWAT_USB_App
{
partial class Main_Menu_Form
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
 
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
 
#region Windows Form Designer generated code
 
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Main_Menu_Form));
this.grp_Main_Menu = new System.Windows.Forms.GroupBox();
this.btn_Exit = new System.Windows.Forms.Button();
this.btn_Drivers = new System.Windows.Forms.Button();
this.btn_Software = new System.Windows.Forms.Button();
this.lbl_Main_Menu = new System.Windows.Forms.Label();
this.grp_Main_Menu.SuspendLayout();
this.SuspendLayout();
//
// grp_Main_Menu
//
this.grp_Main_Menu.Controls.Add(this.btn_Exit);
this.grp_Main_Menu.Controls.Add(this.btn_Drivers);
this.grp_Main_Menu.Controls.Add(this.btn_Software);
this.grp_Main_Menu.Controls.Add(this.lbl_Main_Menu);
this.grp_Main_Menu.Location = new System.Drawing.Point(12, 12);
this.grp_Main_Menu.Name = "grp_Main_Menu";
this.grp_Main_Menu.Size = new System.Drawing.Size(275, 107);
this.grp_Main_Menu.TabIndex = 2;
this.grp_Main_Menu.TabStop = false;
this.grp_Main_Menu.Text = "Main Menu";
//
// btn_Exit
//
this.btn_Exit.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.btn_Exit.Location = new System.Drawing.Point(185, 17);
this.btn_Exit.Name = "btn_Exit";
this.btn_Exit.Size = new System.Drawing.Size(75, 23);
this.btn_Exit.TabIndex = 5;
this.btn_Exit.Text = "Exit [Esc]";
this.btn_Exit.UseVisualStyleBackColor = true;
this.btn_Exit.Click += new System.EventHandler(this.btn_Main_Exit_Click);
//
// btn_Drivers
//
this.btn_Drivers.FlatStyle = System.Windows.Forms.FlatStyle.System;
this.btn_Drivers.Font = new System.Drawing.Font("Calibri", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Drivers.Location = new System.Drawing.Point(14, 47);
this.btn_Drivers.Name = "btn_Drivers";
this.btn_Drivers.Size = new System.Drawing.Size(120, 45);
this.btn_Drivers.TabIndex = 3;
this.btn_Drivers.Text = "Install &Drivers\r\n";
this.btn_Drivers.UseVisualStyleBackColor = true;
this.btn_Drivers.Click += new System.EventHandler(this.btn_Main_Drivers_Click);
//
// btn_Software
//
this.btn_Software.FlatStyle = System.Windows.Forms.FlatStyle.System;
this.btn_Software.Font = new System.Drawing.Font("Calibri", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Software.Location = new System.Drawing.Point(140, 47);
this.btn_Software.Name = "btn_Software";
this.btn_Software.Size = new System.Drawing.Size(120, 45);
this.btn_Software.TabIndex = 4;
this.btn_Software.Text = "Install &Software\r\n";
this.btn_Software.UseVisualStyleBackColor = true;
this.btn_Software.Click += new System.EventHandler(this.btn_Main_Software_Click);
//
// lbl_Main_Menu
//
this.lbl_Main_Menu.AutoSize = true;
this.lbl_Main_Menu.Location = new System.Drawing.Point(6, 22);
this.lbl_Main_Menu.Name = "lbl_Main_Menu";
this.lbl_Main_Menu.Size = new System.Drawing.Size(164, 13);
this.lbl_Main_Menu.TabIndex = 0;
this.lbl_Main_Menu.Text = "To begin, please select an option";
//
// form_Main_Menu
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.CancelButton = this.btn_Exit;
this.ClientSize = new System.Drawing.Size(298, 131);
this.Controls.Add(this.grp_Main_Menu);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.Name = "form_Main_Menu";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "SWAT USB Installer";
this.grp_Main_Menu.ResumeLayout(false);
this.grp_Main_Menu.PerformLayout();
this.ResumeLayout(false);
 
}
 
#endregion
 
private System.Windows.Forms.GroupBox grp_Main_Menu;
private System.Windows.Forms.Button btn_Drivers;
private System.Windows.Forms.Button btn_Software;
private System.Windows.Forms.Label lbl_Main_Menu;
private System.Windows.Forms.Button btn_Exit;
}
}
 
/SWAT USB App/trunk/SWAT USB App/Main_Menu_Form.cs
0,0 → 1,103
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 Main_Menu_Form : Form
{
public Main_Menu_Form()
{
Initialization.Initialize();
Debug.startNewSession();
Debug.appendText("Main menu form initializing");
Debug.appendText("SWAT Drive detected as drive " + Initialization.pathToSWATDrive);
InitializeComponent();
this.KeyPreview = true;
this.KeyPress += new KeyPressEventHandler(this.form_Main_Menu_KeyPress);
this.FormClosing += new FormClosingEventHandler(form_Main_Menu_FormClosing);
if (!SettingsParser.settingsFileExist())
{
Debug.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)
{
Drivers_Form driverForm = new Drivers_Form();
this.WindowState = FormWindowState.Minimized;
driverForm.ShowDialog();
this.WindowState = FormWindowState.Normal;
}
private void btn_Main_Software_Click(object sender, EventArgs e)
{
Software_Form softwareForm = new Software_Form();
this.WindowState = FormWindowState.Minimized;
softwareForm.ShowDialog();
this.WindowState = FormWindowState.Normal;
}
private void btn_Main_Exit_Click(object sender, EventArgs e)
{
if (System.IO.File.Exists("Debug.txt"))
Debug.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':
Drivers_Form driverForm = new Drivers_Form();
driverForm.ShowDialog();
break;
case 's':
case 'S':
Software_Form softwareForm = new Software_Form();
softwareForm.ShowDialog();
break;
case '?':
About_Box_Form aboutForm = new About_Box_Form();
aboutForm.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)
{
Debug.appendText("Exception Thrown: " + ex.ToString());
MessageBox.Show(ex.ToString());
}
}
}
}
/SWAT USB App/trunk/SWAT USB App/Main_Menu_Form.resx
0,0 → 1,226
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
 
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAIAMDAAAAEACACoDgAAJgAAACAgAAABAAgAqAgAAM4OAAAoAAAAMAAAAGAAAAABAAgAAAAAAAAJ
AAAAAAAAAAAAAAABAAAAAQAAAAAAAAYGBgAKCgoADw8PABQUFAAaGhoAHx8fACQkJAApKSkALi4uADAw
MAA0NDQAPj4+AEhISABOTk4AYmJiAGdnZwBtbW0AfHx8AIKCggCPj48AkZGRAJycnAChoaEAsLCwALW1
tQDAwMAAy8vLANDQ0ADV1dUA2traAN/f3wDk5OQA6urqAO/v7wD09PQA/v7+AAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAJCQkJAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAJCQkJAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
JCQkJAAAAAAAAAAAAAAAAAAAAAAAACQkJCQAAAAAAAAAAAAAAAAAAAAAAAAkJCQkAAAAAAAAAAAAAAAA
AAAAAAAAAAAAACQkJCQAAAAAAAAAAAAAAAAAAAAAAAAkJCQkAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQk
JCQAAAAAAAAAAAAAAAAAAAAAAAAkJCQkAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQkJCQAAAAAAAAAAAAA
AAAAAAAAAAAkJCQkAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQkJCQAAAAAAAAAAAAAAAAAAAAAAAAkJCQk
AAAAAAAAAAAAAAAAAAAAAAAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJB8AAAAAAAAA
AAAAAAAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJB8AAAAAAAAAAAAAAAAkJCQkJCQk
JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJB8AAAAAAAAAAAAAAAAkJCQkJCQkJCQkJCQkJCQkJCQk
JCQkJCQkJCQkJCQkJCQkJB8AAAAAAAAAAAAAAAAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQk
JCQkJCEAAAAAAAAAACQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkAAAA
ACQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkAAAAACQkJCQkJCQkJCQk
JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkAAAAACQkJCQkJCQkJCQkJCQAAAAAJCQkJCQk
JCQkJAAAAAAkJCQkJCQkJCQkJCQkAAAAACQkJCQkJCQkJCQkJCQAAAAAJCQkJCQkJCQkJAAAAAAkJCQk
JCQkJCQkJCQkAAAAACQkJCQkJCQkJCQkJCQAAAAAJCQkJCQkJCQkJAAAAAAkJCQkJCQkJCQkJCQkAAAA
ACQkJCQkJCQkJCQkJCQAAAAAJCQkJCQkJCQkJAAAAAAkJCQkJCQkJCQkJCQkAAAAACQkJCQAAAAAJCQk
JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAAAAAAkJCQkAAAAACQkJCQAAAAAJCQkJCQkJCQkJCQkJCQk
JCQkJCQkJCQkJCQkJAAAAAAkJCQkAAAAACQkJCQAAAAAJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQk
JAAAAAAkJCQkAAAAACQkJCQAAAAAJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAAAAAAkJCQkAAAA
ACQkJCQAAAAAAAAAACQkJCQAAAAAAAAAAAAAAAAkJCQkAAAAAAAAAAAkJCQkAAAAACQkJCQAAAAAAAAA
ACQkJCQAAAAAAAAAAAAAAAAkJCQkAAAAAAAAAAAkJCQkAAAAACQkJCQAAAAAAAAAACQkJCQAAAAAAAAA
AAAAAAAkJCQkAAAAAAAAAAAkJCQkAAAAACQkJCQAAAAAAAAAACQkJCQAAAAAAAAAAAAAAAAkJCQkAAAA
AAAAAAAkJCQkAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAA
AAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQk
JAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAA
AAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///////wAA////////
AAD///////8AAP///////wAA+B///+B/AAD4H///4H8AAPgH///gHwAA+Af//+AfAAD4Af//AB8AAPgA
//8AHwAA/gB//wAfAAD+AH//AB8AAP8Af/8A/wAA8AAAAAA/AADwAAAAAD8AAPAAAAAADwAA8AAAAAAP
AADwAAAAAA8AAAAAAAAAAwAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAABAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAMAAAAAA
AAAAwAAAAAAAAACAD/AHAAAAAIAP8AMAAADAgA/wAMAAAMCAD/gAwAAA/4D//AD/AAD/gP//AP8AAP/A
//+A/wAA/8D//4D/AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////
AAD///////8AACgAAAAgAAAAQAAAAAEACAAAAAAAAAQAAAAAAAAAAAAAAAEAAAABAAAAAAAABQUFABAQ
EAAUFBQAICAgACQkJAAvLy8ANjY2AD8/PwBDQ0MAREREAEhISABMTEwAUlJSAFZWVgBaWloAXV1dAGJi
YgBoaGgAbW1tAHx8fACCgoIAkZGRAJaWlgCcnJwAoaGhALCwsAC2trYAwMDAAMrKygDV1dUA2traAN/f
3wDq6uoA7+/vAPT09AD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAAAAAAAAAf
JAAAAAAAAAAAAAIAJCQAAAAAAAAAAAAAAAAAAAAAAB8kAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAA
ACQkAAAAAAAAAAAAAAAAAAAAJCQAAAAAAAAAAAAAAAAAJCQAAAAAAAAAAAAAAAAAAAAkJAAAAAAAAAAA
AAAAAAAkJAAAAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAAJCQkJCQkJCQk
JCQkJCQkJCQkJCQkJCQAAAAAAAAAAAAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAAAAAAAAAAAACQkJCQk
JCQkJCQkJCQkJCQkJCQkJCQkAAAAAAAAJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQAAAAkJCQk
JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAAAACQkJCQkJCQkAAAAJCQkJCQkJAAAACQkJCQkJCQkAAAA
JCQkJCQkJCQAAAAkJCQkJCQkAAAAJCQkJCQkJCQAAAAkJAAAAAAkJAAAACQkJCQkJCQAAAAkJAAAAAAk
JAAAACQkAAAAACQkJCQkJCQkJCQkJCQkJCQkAAAAACQkAAAAJCQAAAAAJCQkJCQkJCQkJCQkJCQkJCQA
AAAAJCQAAAAkJAAAAAAAACQkJAAAAAAAAAAkJCQAAAAAAAAkJAAAACQkAAAAAAAAJCQkAAAAAAAAACQk
JAAAAAAAACQkAAAAJCQAAAAAAAAkJCQAAAAAAAAAJCQkAAAAAAAAJCQAAAAAAAAAAAAkJAAAAAAAAAAA
AAAAAAAkJAAAAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
/////////////+H//h/gf/4P4D/4D/Af+A/4H/gP+B/4P+AAAA/gAAAH4AAABwAAAAcAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAABAAAIAYAACAEA8BghAPAMIQD4DD8H/g//h/8P///////////////////
////////
</value>
</data>
</root>
/SWAT USB App/trunk/SWAT USB App/Program.cs
15,7 → 15,7
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new form_Main_Menu());
Application.Run(new Main_Menu_Form());
}
}
}
/SWAT USB App/trunk/SWAT USB App/Resources/SpaceInvader.ico
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/SWAT USB App/trunk/SWAT USB App/Resources/SpaceInvader.ico
Property changes:
Added: svn:mime-type
+application/octet-stream
\ No newline at end of property
/SWAT USB App/trunk/SWAT USB App/Resources
Property changes:
Added: tsvn:logrevregex
+\b(r\d+)|\b(revisions?(\(s\))?\s#?\d+([, ]+(and\s?)?\d+)*)|\b(revs?\.?\s?\d+([, ]+(and\s?)?\d+)*)
\ No newline at end of property
/SWAT USB App/trunk/SWAT USB App/SWAT USB App.csproj
49,7 → 49,7
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup>
<ApplicationIcon>SpaceInvader.ico</ApplicationIcon>
<ApplicationIcon>Resources\SpaceInvader.ico</ApplicationIcon>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
64,46 → 64,46
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="AboutBox.cs">
<Compile Include="About_Box_Form.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="AboutBox.Designer.cs">
<DependentUpon>AboutBox.cs</DependentUpon>
<Compile Include="About_Box_Form.Designer.cs">
<DependentUpon>About_Box_Form.cs</DependentUpon>
</Compile>
<Compile Include="DebugText.cs" />
<Compile Include="form_Drivers.cs">
<Compile Include="Debug.cs" />
<Compile Include="Drivers_Form.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="form_Drivers.Designer.cs">
<DependentUpon>form_Drivers.cs</DependentUpon>
<Compile Include="Drivers_Form.Designer.cs">
<DependentUpon>Drivers_Form.cs</DependentUpon>
</Compile>
<Compile Include="form_Main_Menu.cs">
<Compile Include="Main_Menu_Form.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="form_Main_Menu.Designer.cs">
<DependentUpon>form_Main_Menu.cs</DependentUpon>
<Compile Include="Main_Menu_Form.Designer.cs">
<DependentUpon>Main_Menu_Form.cs</DependentUpon>
</Compile>
<Compile Include="form_Software.cs">
<Compile Include="Software_Form.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="form_Software.Designer.cs">
<DependentUpon>form_Software.cs</DependentUpon>
<Compile Include="Software_Form.Designer.cs">
<DependentUpon>Software_Form.cs</DependentUpon>
</Compile>
<Compile Include="Initialization.cs" />
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="SettingsParser.cs" />
<EmbeddedResource Include="AboutBox.resx">
<DependentUpon>AboutBox.cs</DependentUpon>
<EmbeddedResource Include="About_Box_Form.resx">
<DependentUpon>About_Box_Form.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="form_Drivers.resx">
<DependentUpon>form_Drivers.cs</DependentUpon>
<EmbeddedResource Include="Drivers_Form.resx">
<DependentUpon>Drivers_Form.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="form_Main_Menu.resx">
<DependentUpon>form_Main_Menu.cs</DependentUpon>
<EmbeddedResource Include="Main_Menu_Form.resx">
<DependentUpon>Main_Menu_Form.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="form_Software.resx">
<DependentUpon>form_Software.cs</DependentUpon>
<EmbeddedResource Include="Software_Form.resx">
<DependentUpon>Software_Form.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
148,7 → 148,7
</BootstrapperPackage>
</ItemGroup>
<ItemGroup>
<Content Include="SpaceInvader.ico" />
<Content Include="Resources\SpaceInvader.ico" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
/SWAT USB App/trunk/SWAT USB App/SettingsParser.cs
41,7 → 41,7
{
try
{
DebugText.appendText("Parsing USBSettings.xml");
Debug.appendText("Parsing USBSettings.xml");
// Clears the lists for software and drivers
ApplicationsList.Clear();
DriversList.Clear();
49,30 → 49,30
Settings = XElement.Load(settingsFileLocation);
 
// Reads program settings
DebugText.appendText("Reading program settings");
Debug.appendText("Reading program settings");
XElement temp = Settings.Element("Program").Element("SoftwareFormWidth");
if (temp == null)
DebugText.appendText("Setting SoftwareFormWidth not found. Using default value of 210");
Debug.appendText("Setting SoftwareFormWidth not found. Using default value of 210");
else
softwareFormWidth = int.Parse(Settings.Element("Program").Element("SoftwareFormWidth").Value);
 
temp = Settings.Element("Program").Element("DriverFormWidth");
if (temp == null)
DebugText.appendText("Setting DriverFormWidth not found. Using default value of 180");
Debug.appendText("Setting DriverFormWidth not found. Using default value of 180");
else
driverFormWidth = int.Parse(Settings.Element("Program").Element("DriverFormWidth").Value);
 
temp = Settings.Element("Program").Element("CheckForMatchingModel");
if (temp == null)
DebugText.appendText("Setting CheckForMatchingModel not found. Using default value of false");
Debug.appendText("Setting CheckForMatchingModel not found. Using default value of false");
else
driverCheckForMatchingModel = bool.Parse(Settings.Element("Program").Element("CheckForMatchingModel").Value);
 
// Reads the list of applications from the USBSettings.xml file into form_Software.softwareList
DebugText.appendText("Parsing list of applications");
Debug.appendText("Parsing list of applications");
foreach (XElement elem in Settings.Elements("Applications").Elements("Application"))
{
DebugText.appendText("Adding application " + elem.Element("Name").Value);
Debug.appendText("Adding application " + elem.Element("Name").Value);
// Creates new Applications struct for holding app info
Applications structElem = new Applications();
// Sets Name value
89,7 → 89,7
int counter = 0;
foreach (XElement element in elem.Elements("Setup").Elements("Location"))
{
DebugText.appendText("Reading setup locations for application " + structElem.Name);
Debug.appendText("Reading setup locations for application " + structElem.Name);
setupLocation[counter] = (string)element.Value;
setupLocation[counter + 1] = (string)element.Attribute("Args");
counter += 2;
100,10 → 100,10
}
 
// Reads the list of drivers from the USBSettings.xml file into form_Drivers.driverList
DebugText.appendText("Parsing list of drivers");
Debug.appendText("Parsing list of drivers");
foreach (XElement elem in Settings.Elements("Drivers").Elements("Driver"))
{
DebugText.appendText("Adding driver " + elem.Element("Name").Value);
Debug.appendText("Adding driver " + elem.Element("Name").Value);
// Creates new Drivers struct for holding driver info
Drivers structElem = new Drivers();
// Sets Name value
113,7 → 113,7
int counter = 0;
foreach (XElement element in elem.Elements("Setup").Elements("Location"))
{
DebugText.appendText("Reading setup locations for driver " + structElem.Name);
Debug.appendText("Reading setup locations for driver " + structElem.Name);
setupLocation[counter] = (string)element.Value;
setupLocation[counter + 1] = (string)element.Attribute("Args");
counter += 2;
125,7 → 125,7
}
catch (Exception e)
{
DebugText.appendText("Exception Thrown: " + e.ToString());
Debug.appendText("Exception Thrown: " + e.ToString());
MessageBox.Show(e.ToString());
}
}
/SWAT USB App/trunk/SWAT USB App/Software_Form.Designer.cs
0,0 → 1,113
namespace SWAT_USB_App
{
partial class Software_Form
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
 
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
 
#region Windows Form Designer generated code
 
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Software_Form));
this.btn_Cancel = new System.Windows.Forms.Button();
this.btn_Ok = new System.Windows.Forms.Button();
this.groupBox_SoftwareList = new System.Windows.Forms.GroupBox();
this.btn_Reset = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// btn_Cancel
//
this.btn_Cancel.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Cancel.DialogResult = System.Windows.Forms.DialogResult.Cancel;
this.btn_Cancel.FlatStyle = System.Windows.Forms.FlatStyle.System;
this.btn_Cancel.Location = new System.Drawing.Point(136, 37);
this.btn_Cancel.Name = "btn_Cancel";
this.btn_Cancel.Size = new System.Drawing.Size(56, 24);
this.btn_Cancel.TabIndex = 4;
this.btn_Cancel.Text = "Cancel";
this.btn_Cancel.UseVisualStyleBackColor = true;
this.btn_Cancel.Click += new System.EventHandler(this.btn_Cancel_Click);
//
// btn_Ok
//
this.btn_Ok.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Ok.FlatStyle = System.Windows.Forms.FlatStyle.System;
this.btn_Ok.Location = new System.Drawing.Point(74, 37);
this.btn_Ok.Name = "btn_Ok";
this.btn_Ok.Size = new System.Drawing.Size(56, 24);
this.btn_Ok.TabIndex = 3;
this.btn_Ok.Text = "Ok";
this.btn_Ok.UseVisualStyleBackColor = true;
this.btn_Ok.Click += new System.EventHandler(this.btn_Ok_Click);
//
// groupBox_SoftwareList
//
this.groupBox_SoftwareList.Location = new System.Drawing.Point(12, 12);
this.groupBox_SoftwareList.Name = "groupBox_SoftwareList";
this.groupBox_SoftwareList.Size = new System.Drawing.Size(180, 19);
this.groupBox_SoftwareList.TabIndex = 1;
this.groupBox_SoftwareList.TabStop = false;
this.groupBox_SoftwareList.Text = "Choose Software to Install";
//
// btn_Reset
//
this.btn_Reset.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.btn_Reset.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btn_Reset.Location = new System.Drawing.Point(12, 37);
this.btn_Reset.Name = "btn_Reset";
this.btn_Reset.Size = new System.Drawing.Size(56, 24);
this.btn_Reset.TabIndex = 2;
this.btn_Reset.Text = "Reset";
this.btn_Reset.UseVisualStyleBackColor = true;
this.btn_Reset.Click += new System.EventHandler(this.btn_Reset_Click);
//
// form_Software
//
this.AcceptButton = this.btn_Ok;
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.CancelButton = this.btn_Cancel;
this.ClientSize = new System.Drawing.Size(204, 73);
this.Controls.Add(this.btn_Reset);
this.Controls.Add(this.btn_Ok);
this.Controls.Add(this.groupBox_SoftwareList);
this.Controls.Add(this.btn_Cancel);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
this.MaximizeBox = false;
this.Name = "form_Software";
this.ShowInTaskbar = false;
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Software";
this.ResumeLayout(false);
 
}
 
#endregion
 
private System.Windows.Forms.Button btn_Cancel;
private System.Windows.Forms.Button btn_Ok;
private System.Windows.Forms.GroupBox groupBox_SoftwareList;
private System.Windows.Forms.Button btn_Reset;
}
}
/SWAT USB App/trunk/SWAT USB App/Software_Form.cs
0,0 → 1,234
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;
using System.Threading;
 
namespace SWAT_USB_App
{
public partial class Software_Form : Form
{
private static List<string> subGroups = new List<string>();
private static List<Process> toInstall = new List<Process>();
private static List<CheckBox> formCheckBoxes = new List<CheckBox>();
private static List<RadioButton> formRadioButton = new List<RadioButton>();
public Software_Form()
{
// Draws the form with a checkbox for each software specified in the text file
InitializeComponent();
try
{
if (SettingsParser.ApplicationsList.Count() == 0)
{
Debug.appendText("No software were found in USBSettings.xml");
MessageBox.Show("No software were found in USBSettings.xml");
this.Close();
}
else
{
Debug.appendText("Software form initializing");
// Clears all lists
subGroups.Clear();
toInstall.Clear();
formCheckBoxes.Clear();
formRadioButton.Clear();
// Location placeholder
int nextXLocation = 6, nextYLocation = 19;
// Extracts all groups from ApplicationsList
for (int i = 0; i < SettingsParser.ApplicationsList.Count(); i++)
if (SettingsParser.ApplicationsList[i].Group != null)
{
// Check if group exists already
bool groupExist = false;
for (int j = 0; j < subGroups.Count(); j++)
if (SettingsParser.ApplicationsList[i].Group == subGroups[j])
{
groupExist = true;
break;
}
if (!groupExist)
subGroups.Add(SettingsParser.ApplicationsList[i].Group);
}
// Updates the groupbox size to hold all the checkboxes and subgroups
this.groupBox_SoftwareList.Size = new Size(SettingsParser.softwareFormWidth - 30, 19 + SettingsParser.ApplicationsList.Count() * 23 + (subGroups.Count() * 25));
// Updates the window size to hold all elements
this.Size = new Size(SettingsParser.softwareFormWidth, 101 + SettingsParser.ApplicationsList.Count() * 23 + (subGroups.Count() * 25));
// Adds a checkbox for each software item that is ungrouped, adds checkbox to list formCheckBoxes
for (int i = 0; i < SettingsParser.ApplicationsList.Count(); i++)
{
if (SettingsParser.ApplicationsList[i].Group == null)
{
// Creates a new checkbox
CheckBox chkBox = new CheckBox();
chkBox.Name = "chk_" + SettingsParser.ApplicationsList[i].Name;
chkBox.AutoSize = true;
chkBox.Text = SettingsParser.ApplicationsList[i].Name;
if (SettingsParser.ApplicationsList[i].Default)
chkBox.Checked = true;
chkBox.Location = new Point(nextXLocation, nextYLocation);
// Increments the location placeholder for the next element
nextYLocation += 23;
// Adds the checkbox to the parent groupbox
this.groupBox_SoftwareList.Controls.Add(chkBox);
// Adds the checkbox to formCheckBoxes list
formCheckBoxes.Add(chkBox);
}
}
// Adds a groupbox for each entry specified in subGroups as well as any applications under the group
for (int i = 0; i < subGroups.Count(); i++)
{
// Sets the internal location coordinates for the next element
int subNextXLocation = 6;
int subNextYLocation = 19;
// Creates a new groupbox
GroupBox grpBox = new GroupBox();
grpBox.Name = "grp_" + subGroups[i];
grpBox.Text = subGroups[i];
// Finds the number of applications under the group
int numberOfSubentries = 0;
for (int j = 0; j < SettingsParser.ApplicationsList.Count(); j++)
if (SettingsParser.ApplicationsList[j].Group == subGroups[i])
{
// If the group matches, creates a new radiobutton
numberOfSubentries++;
RadioButton rdoBtn = new RadioButton();
rdoBtn.Name = "rdo_" + SettingsParser.ApplicationsList[j].Name;
rdoBtn.AutoSize = true;
rdoBtn.Text = SettingsParser.ApplicationsList[j].Name;
if (SettingsParser.ApplicationsList[j].Default)
rdoBtn.Checked = true;
rdoBtn.Location = new Point(subNextXLocation, subNextYLocation);
// Increments the location placeholder for the next element
subNextYLocation += 23;
// Adds the radiobutton to the parent groupbox
grpBox.Controls.Add(rdoBtn);
// Adds the radiobutton to formRadioButton list
formRadioButton.Add(rdoBtn);
}
grpBox.Size = new Size(SettingsParser.softwareFormWidth - 42, 19 + numberOfSubentries * 23);
grpBox.Location = new Point(nextXLocation, nextYLocation);
nextYLocation += 25 + numberOfSubentries * 23;
// Adds the created groupbox to the parent groupbox
this.groupBox_SoftwareList.Controls.Add(grpBox);
}
}
}
catch (Exception ex)
{
Debug.appendText("Exception Thrown: " + ex.ToString());
MessageBox.Show(ex.ToString());
}
}
private void updateToInstallList()
{
try
{
Debug.appendText("Updating list of processes to run from list of software checked");
// Updates list toInstall with processes for each software checked in formCheckBoxes
for (int i = 0; i < formCheckBoxes.Count(); i++)
{
if (formCheckBoxes[i].Checked)
{
string[] temp = null;
// Pulls the setup locations
for (int j = 0; j < SettingsParser.ApplicationsList.Count(); j++)
if (SettingsParser.ApplicationsList[j].Name == formCheckBoxes[i].Text)
{
temp = SettingsParser.ApplicationsList[j].SetupFileLocation;
break;
}
for (int j = 0; j < temp.Count(); j += 2)
{
Process proc = new Process();
proc.StartInfo.FileName = Initialization.pathToSWATDrive + temp[j];
proc.StartInfo.Arguments = temp[j + 1];
toInstall.Add(proc);
}
}
}
// Updates list toInstall with processes for each software checked in formRadioButton
for (int i = 0; i < formRadioButton.Count(); i++)
{
if (formRadioButton[i].Checked)
{
string[] temp = null;
// Pulls the setup locations
for (int j = 0; j < SettingsParser.ApplicationsList.Count(); j++)
if (SettingsParser.ApplicationsList[j].Name == formRadioButton[i].Text)
{
temp = SettingsParser.ApplicationsList[j].SetupFileLocation;
break;
}
for (int j = 0; j < temp.Count(); j += 2)
{
Process proc = new Process();
proc.StartInfo.FileName = Initialization.pathToSWATDrive + temp[j];
proc.StartInfo.Arguments = temp[j + 1];
toInstall.Add(proc);
}
}
}
}
catch (Exception e)
{
Debug.appendText("Exception Thrown: " + e.ToString());
MessageBox.Show(e.ToString());
}
}
private void startSoftwareInstaller(List<Process> toInstall, int ID)
{
Debug.appendText("Starting to install softwares from list of processes");
try
{
this.WindowState = FormWindowState.Minimized;
// Goes through list toInstall and runs each process after the previous one ends
int tempID = ID;
if (tempID < toInstall.Count)
{
Debug.appendText("Running setup " + toInstall[ID].StartInfo.FileName + " with arguments " + toInstall[ID].StartInfo.Arguments);
toInstall[ID].Start();
while (!toInstall[ID].HasExited)
{
// Waits for installer to finish before starting the next one
Thread.Sleep(3000);
}
if (toInstall[ID].HasExited)
{
Debug.appendText("Setup is detected as finished, running next setup");
tempID++;
startSoftwareInstaller(toInstall, tempID);
}
}
this.WindowState = FormWindowState.Normal;
}
catch (Exception e)
{
Debug.appendText("Exception Thrown: " + e.ToString());
MessageBox.Show(e.ToString());
}
}
private void btn_Ok_Click(object sender, EventArgs e)
{
updateToInstallList();
startSoftwareInstaller(toInstall, 0);
this.Close();
}
private void btn_Cancel_Click(object sender, EventArgs e)
{
Debug.appendText("Closing software form");
this.Close();
}
private void btn_Reset_Click(object sender, EventArgs e)
{
for (int i = 0; i < formCheckBoxes.Count(); i++)
formCheckBoxes[i].Checked = false;
for (int i = 0; i < formRadioButton.Count(); i++)
formRadioButton[i].Checked = false;
}
}
}
/SWAT USB App/trunk/SWAT USB App/Software_Form.resx
0,0 → 1,226
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
 
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
AAABAAIAMDAAAAEACACoDgAAJgAAACAgAAABAAgAqAgAAM4OAAAoAAAAMAAAAGAAAAABAAgAAAAAAAAJ
AAAAAAAAAAAAAAABAAAAAQAAAAAAAAYGBgAKCgoADw8PABQUFAAaGhoAHx8fACQkJAApKSkALi4uADAw
MAA0NDQAPj4+AEhISABOTk4AYmJiAGdnZwBtbW0AfHx8AIKCggCPj48AkZGRAJycnAChoaEAsLCwALW1
tQDAwMAAy8vLANDQ0ADV1dUA2traAN/f3wDk5OQA6urqAO/v7wD09PQA/v7+AAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAJCQkJAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAJCQkJAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
JCQkJAAAAAAAAAAAAAAAAAAAAAAAACQkJCQAAAAAAAAAAAAAAAAAAAAAAAAkJCQkAAAAAAAAAAAAAAAA
AAAAAAAAAAAAACQkJCQAAAAAAAAAAAAAAAAAAAAAAAAkJCQkAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQk
JCQAAAAAAAAAAAAAAAAAAAAAAAAkJCQkAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQkJCQAAAAAAAAAAAAA
AAAAAAAAAAAkJCQkAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQkJCQAAAAAAAAAAAAAAAAAAAAAAAAkJCQk
AAAAAAAAAAAAAAAAAAAAAAAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJB8AAAAAAAAA
AAAAAAAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJB8AAAAAAAAAAAAAAAAkJCQkJCQk
JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJB8AAAAAAAAAAAAAAAAkJCQkJCQkJCQkJCQkJCQkJCQk
JCQkJCQkJCQkJCQkJCQkJB8AAAAAAAAAAAAAAAAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQk
JCQkJCEAAAAAAAAAACQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkAAAA
ACQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkAAAAACQkJCQkJCQkJCQk
JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkAAAAACQkJCQkJCQkJCQkJCQAAAAAJCQkJCQk
JCQkJAAAAAAkJCQkJCQkJCQkJCQkAAAAACQkJCQkJCQkJCQkJCQAAAAAJCQkJCQkJCQkJAAAAAAkJCQk
JCQkJCQkJCQkAAAAACQkJCQkJCQkJCQkJCQAAAAAJCQkJCQkJCQkJAAAAAAkJCQkJCQkJCQkJCQkAAAA
ACQkJCQkJCQkJCQkJCQAAAAAJCQkJCQkJCQkJAAAAAAkJCQkJCQkJCQkJCQkAAAAACQkJCQAAAAAJCQk
JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAAAAAAkJCQkAAAAACQkJCQAAAAAJCQkJCQkJCQkJCQkJCQk
JCQkJCQkJCQkJCQkJAAAAAAkJCQkAAAAACQkJCQAAAAAJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQk
JAAAAAAkJCQkAAAAACQkJCQAAAAAJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAAAAAAkJCQkAAAA
ACQkJCQAAAAAAAAAACQkJCQAAAAAAAAAAAAAAAAkJCQkAAAAAAAAAAAkJCQkAAAAACQkJCQAAAAAAAAA
ACQkJCQAAAAAAAAAAAAAAAAkJCQkAAAAAAAAAAAkJCQkAAAAACQkJCQAAAAAAAAAACQkJCQAAAAAAAAA
AAAAAAAkJCQkAAAAAAAAAAAkJCQkAAAAACQkJCQAAAAAAAAAACQkJCQAAAAAAAAAAAAAAAAkJCQkAAAA
AAAAAAAkJCQkAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAA
AAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQk
JAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAA
AAAAAAAAAAAAJCQkJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP///////wAA////////
AAD///////8AAP///////wAA+B///+B/AAD4H///4H8AAPgH///gHwAA+Af//+AfAAD4Af//AB8AAPgA
//8AHwAA/gB//wAfAAD+AH//AB8AAP8Af/8A/wAA8AAAAAA/AADwAAAAAD8AAPAAAAAADwAA8AAAAAAP
AADwAAAAAA8AAAAAAAAAAwAAAAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAABAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAMAAAAAA
AAAAwAAAAAAAAACAD/AHAAAAAIAP8AMAAADAgA/wAMAAAMCAD/gAwAAA/4D//AD/AAD/gP//AP8AAP/A
//+A/wAA/8D//4D/AAD///////8AAP///////wAA////////AAD///////8AAP///////wAA////////
AAD///////8AACgAAAAgAAAAQAAAAAEACAAAAAAAAAQAAAAAAAAAAAAAAAEAAAABAAAAAAAABQUFABAQ
EAAUFBQAICAgACQkJAAvLy8ANjY2AD8/PwBDQ0MAREREAEhISABMTEwAUlJSAFZWVgBaWloAXV1dAGJi
YgBoaGgAbW1tAHx8fACCgoIAkZGRAJaWlgCcnJwAoaGhALCwsAC2trYAwMDAAMrKygDV1dUA2traAN/f
3wDq6uoA7+/vAPT09AD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAAAAAAAAAf
JAAAAAAAAAAAAAIAJCQAAAAAAAAAAAAAAAAAAAAAAB8kAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAA
ACQkAAAAAAAAAAAAAAAAAAAAJCQAAAAAAAAAAAAAAAAAJCQAAAAAAAAAAAAAAAAAAAAkJAAAAAAAAAAA
AAAAAAAkJAAAAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAAJCQkJCQkJCQk
JCQkJCQkJCQkJCQkJCQAAAAAAAAAAAAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAAAAAAAAAAAACQkJCQk
JCQkJCQkJCQkJCQkJCQkJCQkAAAAAAAAJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQAAAAkJCQk
JCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAAAACQkJCQkJCQkAAAAJCQkJCQkJAAAACQkJCQkJCQkAAAA
JCQkJCQkJCQAAAAkJCQkJCQkAAAAJCQkJCQkJCQAAAAkJAAAAAAkJAAAACQkJCQkJCQAAAAkJAAAAAAk
JAAAACQkAAAAACQkJCQkJCQkJCQkJCQkJCQkAAAAACQkAAAAJCQAAAAAJCQkJCQkJCQkJCQkJCQkJCQA
AAAAJCQAAAAkJAAAAAAAACQkJAAAAAAAAAAkJCQAAAAAAAAkJAAAACQkAAAAAAAAJCQkAAAAAAAAACQk
JAAAAAAAACQkAAAAJCQAAAAAAAAkJCQAAAAAAAAAJCQkAAAAAAAAJCQAAAAAAAAAAAAkJAAAAAAAAAAA
AAAAAAAkJAAAAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAAACQkAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP//
/////////////+H//h/gf/4P4D/4D/Af+A/4H/gP+B/4P+AAAA/gAAAH4AAABwAAAAcAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAABAAAIAYAACAEA8BghAPAMIQD4DD8H/g//h/8P///////////////////
////////
</value>
</data>
</root>
/SWAT USB App/trunk/SWAT USB App/bin/Debug/SWAT USB App.exe
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream
/SWAT USB App/trunk/SWAT USB App.suo
Cannot display: file marked as a binary type.
svn:mime-type = application/octet-stream