From c24627ed19d7197179a0351ea0832f01838c0dbf Mon Sep 17 00:00:00 2001 From: GtakillerIV Date: Fri, 9 May 2014 17:46:44 +0400 Subject: [PATCH] v1.2 Released --- Source Code/{v1.1 => }/App.config | 0 Source Code/Form1.Designer.cs | 450 ++++++++++++++++++ Source Code/Form1.cs | 404 ++++++++++++++++ Source Code/Form1.resx | 228 +++++++++ Source Code/IniToSQL.csproj | 175 +++++++ Source Code/{v1.1 => }/IniToSQL.csproj.user | 0 Source Code/{v1.0 => }/IniToSQL.sln | 0 Source Code/{v1.0 => }/IniToSQL.v11.suo | Bin Source Code/IniToSQL.v12.suo | Bin 0 -> 49152 bytes Source Code/{v1.1 => }/MySQL.cs | 0 .../{ => Older versions}/v1.0/App.config | 0 .../v1.0/Form1.Designer.cs | 0 .../{ => Older versions}/v1.0/Form1.cs | 0 .../{ => Older versions}/v1.0/Form1.resx | 0 .../{ => Older versions}/v1.0/IniToSQL.csproj | 0 .../v1.0}/IniToSQL.sln | 0 .../v1.0}/IniToSQL.v11.suo | Bin .../v1.0/IniToSQL.v12.suo | Bin Source Code/{ => Older versions}/v1.0/LICENSE | 0 .../{ => Older versions}/v1.0/Program.cs | 0 .../v1.0/Properties/AssemblyInfo.cs | 0 .../v1.0/Properties/Resources.Designer.cs | 0 .../v1.0/Properties/Resources.resx | 0 .../v1.0/Properties/Settings.Designer.cs | 0 .../v1.0/Properties/Settings.settings | 0 .../{ => Older versions}/v1.0/README.md | 0 .../v1.0/Resources/ini2sql.png | Bin .../v1.0/notification.Designer.cs | 0 .../{ => Older versions}/v1.0/notification.cs | 0 .../v1.0/notification.resx | 0 .../DesignTimeResolveAssemblyReferences.cache | Bin ...gnTimeResolveAssemblyReferencesInput.cache | Bin .../v1.0/obj/Debug/IniToSQL.Form1.resources | Bin .../IniToSQL.Properties.Resources.resources | Bin .../IniToSQL.csproj.FileListAbsolute.txt | 0 .../IniToSQL.csproj.GenerateResource.Cache | Bin ...ToSQL.csprojResolveAssemblyReference.cache | Bin .../v1.0/obj/Debug/IniToSQL.exe | Bin .../obj/Debug/IniToSQL.notification.resources | Bin .../v1.0/obj/Debug/IniToSQL.pdb | Bin .../Properties.Resources.Designer.cs.dll | Bin ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_5937a670-0e60-4077-877b-f7221da3dda1.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 ...gnTimeResolveAssemblyReferencesInput.cache | Bin .../v1.0/obj/Release/IniToSQL.Form1.resources | Bin .../IniToSQL.Properties.Resources.resources | Bin .../IniToSQL.csproj.FileListAbsolute.txt | 0 .../IniToSQL.csproj.GenerateResource.Cache | Bin ...ToSQL.csprojResolveAssemblyReference.cache | Bin .../v1.0/obj/Release/IniToSQL.exe | Bin .../Release/IniToSQL.notification.resources | Bin .../v1.0/obj/Release/IniToSQL.pdb | Bin .../Properties.Resources.Designer.cs.dll | Bin ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_5937a670-0e60-4077-877b-f7221da3dda1.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 Source Code/Older versions/v1.1/App.config | 6 + .../v1.1/Form1 - Copy.Designer.cs | 0 .../{ => Older versions}/v1.1/Form1 - Copy.cs | 0 .../v1.1/Form1 - Copy.resx | 0 .../v1.1/Form1.Designer.cs | 0 Source Code/Older versions/v1.1/Form1.cs | 401 ++++++++++++++++ .../{ => Older versions}/v1.1/Form1.resx | 0 .../{ => Older versions}/v1.1/IniToSQL.csproj | 0 .../Older versions/v1.1/IniToSQL.csproj.user | 13 + Source Code/Older versions/v1.1/IniToSQL.sln | 20 + .../Older versions/v1.1/IniToSQL.v11.suo | Bin 0 -> 19968 bytes .../v1.1/IniToSQL.v12.suo | Bin Source Code/Older versions/v1.1/MySQL.cs | 56 +++ .../{ => Older versions}/v1.1/Program.cs | 0 .../v1.1/Properties/AssemblyInfo.cs | 0 .../v1.1/Properties/Resources.Designer.cs | 0 .../v1.1/Properties/Resources.resx | 0 .../v1.1/Properties/Settings.Designer.cs | 0 .../v1.1/Properties/Settings.settings | 0 .../v1.1/Resources/ini2sql.png | Bin .../{ => Older versions}/v1.1/ini2sql_ico.ico | Bin .../v1.1/notification.Designer.cs | 0 .../{ => Older versions}/v1.1/notification.cs | 0 .../v1.1/notification.resx | 0 Source Code/Program.cs | 55 +++ Source Code/Properties/AssemblyInfo.cs | 36 ++ Source Code/Properties/Resources.Designer.cs | 73 +++ Source Code/Properties/Resources.resx | 124 +++++ Source Code/Properties/Settings.Designer.cs | 26 + Source Code/Properties/Settings.settings | 7 + Source Code/Properties/app.manifest | 54 +++ Source Code/Resources/ini2sql.png | Bin 0 -> 4155 bytes Source Code/bin/Release/IniToSQL.vshost.exe | Bin 0 -> 24216 bytes Source Code/ini2sql_ico.ico | Bin 0 -> 5430 bytes Source Code/notification.Designer.cs | 166 +++++++ Source Code/notification.cs | 57 +++ Source Code/notification.resx | 123 +++++ 94 files changed, 2474 insertions(+) rename Source Code/{v1.1 => }/App.config (100%) create mode 100644 Source Code/Form1.Designer.cs create mode 100644 Source Code/Form1.cs create mode 100644 Source Code/Form1.resx create mode 100644 Source Code/IniToSQL.csproj rename Source Code/{v1.1 => }/IniToSQL.csproj.user (100%) rename Source Code/{v1.0 => }/IniToSQL.sln (100%) rename Source Code/{v1.0 => }/IniToSQL.v11.suo (100%) create mode 100644 Source Code/IniToSQL.v12.suo rename Source Code/{v1.1 => }/MySQL.cs (100%) rename Source Code/{ => Older versions}/v1.0/App.config (100%) rename Source Code/{ => Older versions}/v1.0/Form1.Designer.cs (100%) rename Source Code/{ => Older versions}/v1.0/Form1.cs (100%) rename Source Code/{ => Older versions}/v1.0/Form1.resx (100%) rename Source Code/{ => Older versions}/v1.0/IniToSQL.csproj (100%) rename Source Code/{v1.1 => Older versions/v1.0}/IniToSQL.sln (100%) rename Source Code/{v1.1 => Older versions/v1.0}/IniToSQL.v11.suo (100%) rename Source Code/{ => Older versions}/v1.0/IniToSQL.v12.suo (100%) rename Source Code/{ => Older versions}/v1.0/LICENSE (100%) rename Source Code/{ => Older versions}/v1.0/Program.cs (100%) rename Source Code/{ => Older versions}/v1.0/Properties/AssemblyInfo.cs (100%) rename Source Code/{ => Older versions}/v1.0/Properties/Resources.Designer.cs (100%) rename Source Code/{ => Older versions}/v1.0/Properties/Resources.resx (100%) rename Source Code/{ => Older versions}/v1.0/Properties/Settings.Designer.cs (100%) rename Source Code/{ => Older versions}/v1.0/Properties/Settings.settings (100%) rename Source Code/{ => Older versions}/v1.0/README.md (100%) rename Source Code/{ => Older versions}/v1.0/Resources/ini2sql.png (100%) rename Source Code/{ => Older versions}/v1.0/notification.Designer.cs (100%) rename Source Code/{ => Older versions}/v1.0/notification.cs (100%) rename Source Code/{ => Older versions}/v1.0/notification.resx (100%) rename Source Code/{ => Older versions}/v1.0/obj/Debug/DesignTimeResolveAssemblyReferences.cache (100%) rename Source Code/{ => Older versions}/v1.0/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache (100%) rename Source Code/{ => Older versions}/v1.0/obj/Debug/IniToSQL.Form1.resources (100%) rename Source Code/{ => Older versions}/v1.0/obj/Debug/IniToSQL.Properties.Resources.resources (100%) rename Source Code/{ => Older versions}/v1.0/obj/Debug/IniToSQL.csproj.FileListAbsolute.txt (100%) rename Source Code/{ => Older versions}/v1.0/obj/Debug/IniToSQL.csproj.GenerateResource.Cache (100%) rename Source Code/{ => Older versions}/v1.0/obj/Debug/IniToSQL.csprojResolveAssemblyReference.cache (100%) rename Source Code/{ => Older versions}/v1.0/obj/Debug/IniToSQL.exe (100%) rename Source Code/{ => Older versions}/v1.0/obj/Debug/IniToSQL.notification.resources (100%) rename Source Code/{ => Older versions}/v1.0/obj/Debug/IniToSQL.pdb (100%) rename Source Code/{ => Older versions}/v1.0/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll (100%) rename Source Code/{ => Older versions}/v1.0/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs (100%) rename Source Code/{ => Older versions}/v1.0/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs (100%) rename Source Code/{ => Older versions}/v1.0/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs (100%) rename Source Code/{ => Older versions}/v1.0/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache (100%) rename Source Code/{ => Older versions}/v1.0/obj/Release/IniToSQL.Form1.resources (100%) rename Source Code/{ => Older versions}/v1.0/obj/Release/IniToSQL.Properties.Resources.resources (100%) rename Source Code/{ => Older versions}/v1.0/obj/Release/IniToSQL.csproj.FileListAbsolute.txt (100%) rename Source Code/{ => Older versions}/v1.0/obj/Release/IniToSQL.csproj.GenerateResource.Cache (100%) rename Source Code/{ => Older versions}/v1.0/obj/Release/IniToSQL.csprojResolveAssemblyReference.cache (100%) rename Source Code/{ => Older versions}/v1.0/obj/Release/IniToSQL.exe (100%) rename Source Code/{ => Older versions}/v1.0/obj/Release/IniToSQL.notification.resources (100%) rename Source Code/{ => Older versions}/v1.0/obj/Release/IniToSQL.pdb (100%) rename Source Code/{ => Older versions}/v1.0/obj/Release/TempPE/Properties.Resources.Designer.cs.dll (100%) rename Source Code/{ => Older versions}/v1.0/obj/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs (100%) rename Source Code/{ => Older versions}/v1.0/obj/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs (100%) rename Source Code/{ => Older versions}/v1.0/obj/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs (100%) create mode 100644 Source Code/Older versions/v1.1/App.config rename Source Code/{ => Older versions}/v1.1/Form1 - Copy.Designer.cs (100%) rename Source Code/{ => Older versions}/v1.1/Form1 - Copy.cs (100%) rename Source Code/{ => Older versions}/v1.1/Form1 - Copy.resx (100%) rename Source Code/{ => Older versions}/v1.1/Form1.Designer.cs (100%) create mode 100644 Source Code/Older versions/v1.1/Form1.cs rename Source Code/{ => Older versions}/v1.1/Form1.resx (100%) rename Source Code/{ => Older versions}/v1.1/IniToSQL.csproj (100%) create mode 100644 Source Code/Older versions/v1.1/IniToSQL.csproj.user create mode 100644 Source Code/Older versions/v1.1/IniToSQL.sln create mode 100644 Source Code/Older versions/v1.1/IniToSQL.v11.suo rename Source Code/{ => Older versions}/v1.1/IniToSQL.v12.suo (100%) create mode 100644 Source Code/Older versions/v1.1/MySQL.cs rename Source Code/{ => Older versions}/v1.1/Program.cs (100%) rename Source Code/{ => Older versions}/v1.1/Properties/AssemblyInfo.cs (100%) rename Source Code/{ => Older versions}/v1.1/Properties/Resources.Designer.cs (100%) rename Source Code/{ => Older versions}/v1.1/Properties/Resources.resx (100%) rename Source Code/{ => Older versions}/v1.1/Properties/Settings.Designer.cs (100%) rename Source Code/{ => Older versions}/v1.1/Properties/Settings.settings (100%) rename Source Code/{ => Older versions}/v1.1/Resources/ini2sql.png (100%) rename Source Code/{ => Older versions}/v1.1/ini2sql_ico.ico (100%) rename Source Code/{ => Older versions}/v1.1/notification.Designer.cs (100%) rename Source Code/{ => Older versions}/v1.1/notification.cs (100%) rename Source Code/{ => Older versions}/v1.1/notification.resx (100%) create mode 100644 Source Code/Program.cs create mode 100644 Source Code/Properties/AssemblyInfo.cs create mode 100644 Source Code/Properties/Resources.Designer.cs create mode 100644 Source Code/Properties/Resources.resx create mode 100644 Source Code/Properties/Settings.Designer.cs create mode 100644 Source Code/Properties/Settings.settings create mode 100644 Source Code/Properties/app.manifest create mode 100644 Source Code/Resources/ini2sql.png create mode 100644 Source Code/bin/Release/IniToSQL.vshost.exe create mode 100644 Source Code/ini2sql_ico.ico create mode 100644 Source Code/notification.Designer.cs create mode 100644 Source Code/notification.cs create mode 100644 Source Code/notification.resx diff --git a/Source Code/v1.1/App.config b/Source Code/App.config similarity index 100% rename from Source Code/v1.1/App.config rename to Source Code/App.config diff --git a/Source Code/Form1.Designer.cs b/Source Code/Form1.Designer.cs new file mode 100644 index 0000000..30a4833 --- /dev/null +++ b/Source Code/Form1.Designer.cs @@ -0,0 +1,450 @@ +/* + ██╗███╗ ██╗██╗ ██╗ ███████╗ ██████╗ ██╗ + ██║████╗ ██║██║ ╚██╗ ██╔════╝██╔═══██╗██║ + ██║██╔██╗ ██║██║█████╗╚██╗███████╗██║ ██║██║ + ██║██║╚██╗██║██║╚════╝██╔╝╚════██║██║▄▄ ██║██║ + ██║██║ ╚████║██║ ██╔╝ ███████║╚██████╔╝███████╗ + ╚═╝╚═╝ ╚═══╝╚═╝ ╚═╝ ╚══════╝ ╚══▀▀═╝ ╚══════╝ + + The MIT License (MIT) + + Copyright (c) 2014 GtakillerIV + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + +*/ + +namespace IniToSQL +{ + partial class Form1 + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1)); + this.linkLabel2 = new System.Windows.Forms.LinkLabel(); + this.label6 = new System.Windows.Forms.Label(); + this.linkLabel1 = new System.Windows.Forms.LinkLabel(); + this.label5 = new System.Windows.Forms.Label(); + this.backgroundWorker1 = new System.ComponentModel.BackgroundWorker(); + this.button2 = new System.Windows.Forms.Button(); + this.button1 = new System.Windows.Forms.Button(); + this.label2 = new System.Windows.Forms.Label(); + this.progressBar1 = new System.Windows.Forms.ProgressBar(); + this.menuStrip1 = new System.Windows.Forms.MenuStrip(); + this.label1 = new System.Windows.Forms.Label(); + this.folderBrowserDialog1 = new System.Windows.Forms.FolderBrowserDialog(); + this.BTN_Browse = new System.Windows.Forms.Button(); + this.TXTBX_Directory = new System.Windows.Forms.TextBox(); + this.Logo = new System.Windows.Forms.Button(); + this.label3 = new System.Windows.Forms.Label(); + this.label4 = new System.Windows.Forms.Label(); + this.textBox1 = new System.Windows.Forms.TextBox(); + this.checkBox1 = new System.Windows.Forms.CheckBox(); + this.checkBox3 = new System.Windows.Forms.CheckBox(); + this.checkBox2 = new System.Windows.Forms.CheckBox(); + this.textBox2 = new System.Windows.Forms.TextBox(); + this.listBox1 = new System.Windows.Forms.ListBox(); + this.listBox2 = new System.Windows.Forms.ListBox(); + this.listView1 = new System.Windows.Forms.ListView(); + this.SuspendLayout(); + // + // linkLabel2 + // + this.linkLabel2.ActiveLinkColor = System.Drawing.Color.OrangeRed; + this.linkLabel2.AutoSize = true; + this.linkLabel2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(16)))), ((int)(((byte)(16)))), ((int)(((byte)(16))))); + this.linkLabel2.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(16)))), ((int)(((byte)(16)))), ((int)(((byte)(16))))); + this.linkLabel2.LinkBehavior = System.Windows.Forms.LinkBehavior.NeverUnderline; + this.linkLabel2.LinkColor = System.Drawing.SystemColors.ControlLight; + this.linkLabel2.Location = new System.Drawing.Point(404, 6); + this.linkLabel2.Name = "linkLabel2"; + this.linkLabel2.Size = new System.Drawing.Size(28, 13); + this.linkLabel2.TabIndex = 18; + this.linkLabel2.TabStop = true; + this.linkLabel2.Text = "v1.2"; + this.linkLabel2.VisitedLinkColor = System.Drawing.SystemColors.ControlLight; + // + // label6 + // + this.label6.AutoSize = true; + this.label6.Location = new System.Drawing.Point(12, 375); + this.label6.Name = "label6"; + this.label6.Size = new System.Drawing.Size(0, 13); + this.label6.TabIndex = 19; + // + // linkLabel1 + // + this.linkLabel1.ActiveLinkColor = System.Drawing.Color.OrangeRed; + this.linkLabel1.AutoSize = true; + this.linkLabel1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(16)))), ((int)(((byte)(16)))), ((int)(((byte)(16))))); + this.linkLabel1.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(16)))), ((int)(((byte)(16)))), ((int)(((byte)(16))))); + this.linkLabel1.LinkBehavior = System.Windows.Forms.LinkBehavior.NeverUnderline; + this.linkLabel1.LinkColor = System.Drawing.SystemColors.ControlLight; + this.linkLabel1.Location = new System.Drawing.Point(165, 6); + this.linkLabel1.Name = "linkLabel1"; + this.linkLabel1.Size = new System.Drawing.Size(94, 13); + this.linkLabel1.TabIndex = 18; + this.linkLabel1.TabStop = true; + this.linkLabel1.Text = "© GtakillerIV 2014"; + this.linkLabel1.VisitedLinkColor = System.Drawing.SystemColors.ControlLight; + // + // label5 + // + this.label5.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left))); + this.label5.AutoSize = true; + this.label5.Location = new System.Drawing.Point(9, 594); + this.label5.Name = "label5"; + this.label5.Size = new System.Drawing.Size(75, 13); + this.label5.TabIndex = 16; + this.label5.Text = "0/0 Files done"; + // + // backgroundWorker1 + // + this.backgroundWorker1.WorkerSupportsCancellation = true; + this.backgroundWorker1.DoWork += new System.ComponentModel.DoWorkEventHandler(this.backgroundWorker1_DoWork); + this.backgroundWorker1.ProgressChanged += new System.ComponentModel.ProgressChangedEventHandler(this.backgroundWorker1_ProgressChanged); + // + // button2 + // + this.button2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.button2.Enabled = false; + this.button2.Location = new System.Drawing.Point(259, 566); + this.button2.Name = "button2"; + this.button2.Size = new System.Drawing.Size(75, 40); + this.button2.TabIndex = 10; + this.button2.Text = "Stop"; + this.button2.UseVisualStyleBackColor = true; + this.button2.Click += new System.EventHandler(this.button2_Click); + // + // button1 + // + this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right))); + this.button1.Enabled = false; + this.button1.Location = new System.Drawing.Point(349, 566); + this.button1.Name = "button1"; + this.button1.Size = new System.Drawing.Size(75, 40); + this.button1.TabIndex = 10; + this.button1.Text = "Generate"; + this.button1.UseVisualStyleBackColor = true; + this.button1.Click += new System.EventHandler(this.button1_Click); + // + // label2 + // + this.label2.AutoSize = true; + this.label2.Location = new System.Drawing.Point(216, 177); + this.label2.Name = "label2"; + this.label2.Size = new System.Drawing.Size(89, 13); + this.label2.TabIndex = 9; + this.label2.Text = "0 Columns Found"; + // + // progressBar1 + // + this.progressBar1.Location = new System.Drawing.Point(12, 612); + this.progressBar1.Name = "progressBar1"; + this.progressBar1.Size = new System.Drawing.Size(412, 29); + this.progressBar1.Style = System.Windows.Forms.ProgressBarStyle.Continuous; + this.progressBar1.TabIndex = 6; + this.progressBar1.Click += new System.EventHandler(this.progressBar1_Click); + // + // menuStrip1 + // + this.menuStrip1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(16)))), ((int)(((byte)(16)))), ((int)(((byte)(16))))); + this.menuStrip1.Location = new System.Drawing.Point(0, 0); + this.menuStrip1.Name = "menuStrip1"; + this.menuStrip1.Size = new System.Drawing.Size(439, 24); + this.menuStrip1.TabIndex = 5; + this.menuStrip1.Text = "menuStrip1"; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.Location = new System.Drawing.Point(12, 177); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(0, 13); + this.label1.TabIndex = 3; + // + // BTN_Browse + // + this.BTN_Browse.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right))); + this.BTN_Browse.Location = new System.Drawing.Point(369, 153); + this.BTN_Browse.Name = "BTN_Browse"; + this.BTN_Browse.Size = new System.Drawing.Size(55, 20); + this.BTN_Browse.TabIndex = 2; + this.BTN_Browse.Text = "Browse"; + this.BTN_Browse.UseVisualStyleBackColor = true; + this.BTN_Browse.Click += new System.EventHandler(this.BTN_Browse_Click); + // + // TXTBX_Directory + // + this.TXTBX_Directory.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.TXTBX_Directory.Location = new System.Drawing.Point(15, 154); + this.TXTBX_Directory.Name = "TXTBX_Directory"; + this.TXTBX_Directory.ReadOnly = true; + this.TXTBX_Directory.Size = new System.Drawing.Size(348, 20); + this.TXTBX_Directory.TabIndex = 1; + this.TXTBX_Directory.Text = "Accounts Folder"; + // + // Logo + // + this.Logo.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.Logo.BackgroundImage = global::IniToSQL.Properties.Resources.ini2sql; + this.Logo.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Center; + this.Logo.Cursor = System.Windows.Forms.Cursors.Default; + this.Logo.FlatAppearance.BorderColor = System.Drawing.Color.WhiteSmoke; + this.Logo.FlatAppearance.BorderSize = 0; + this.Logo.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.Logo.Location = new System.Drawing.Point(55, 27); + this.Logo.Name = "Logo"; + this.Logo.Size = new System.Drawing.Size(308, 109); + this.Logo.TabIndex = 0; + this.Logo.UseVisualStyleBackColor = true; + this.Logo.Click += new System.EventHandler(this.Logo_Click); + // + // label3 + // + this.label3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left))); + this.label3.AutoSize = true; + this.label3.Location = new System.Drawing.Point(12, 394); + this.label3.Name = "label3"; + this.label3.Size = new System.Drawing.Size(83, 13); + this.label3.TabIndex = 12; + this.label3.Text = "MySQL Settings"; + // + // label4 + // + this.label4.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left))); + this.label4.AutoSize = true; + this.label4.Location = new System.Drawing.Point(12, 485); + this.label4.Name = "label4"; + this.label4.Size = new System.Drawing.Size(45, 13); + this.label4.TabIndex = 12; + this.label4.Text = "Settings"; + // + // textBox1 + // + this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left))); + this.textBox1.Enabled = false; + this.textBox1.Location = new System.Drawing.Point(26, 420); + this.textBox1.Name = "textBox1"; + this.textBox1.Size = new System.Drawing.Size(131, 20); + this.textBox1.TabIndex = 13; + this.textBox1.Text = "Table name"; + // + // checkBox1 + // + this.checkBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left))); + this.checkBox1.AutoSize = true; + this.checkBox1.Checked = true; + this.checkBox1.CheckState = System.Windows.Forms.CheckState.Checked; + this.checkBox1.Enabled = false; + this.checkBox1.Location = new System.Drawing.Point(26, 510); + this.checkBox1.Name = "checkBox1"; + this.checkBox1.Size = new System.Drawing.Size(137, 17); + this.checkBox1.TabIndex = 14; + this.checkBox1.Text = "File contains user name"; + this.checkBox1.UseVisualStyleBackColor = true; + this.checkBox1.CheckedChanged += new System.EventHandler(this.checkBox1_CheckedChanged); + // + // checkBox3 + // + this.checkBox3.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left))); + this.checkBox3.AutoSize = true; + this.checkBox3.Checked = true; + this.checkBox3.CheckState = System.Windows.Forms.CheckState.Checked; + this.checkBox3.Enabled = false; + this.checkBox3.Location = new System.Drawing.Point(26, 452); + this.checkBox3.Name = "checkBox3"; + this.checkBox3.Size = new System.Drawing.Size(131, 17); + this.checkBox3.TabIndex = 14; + this.checkBox3.Text = "Ignore duplicate errors"; + this.checkBox3.UseVisualStyleBackColor = true; + this.checkBox3.CheckedChanged += new System.EventHandler(this.checkBox1_CheckedChanged); + // + // checkBox2 + // + this.checkBox2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left))); + this.checkBox2.AutoSize = true; + this.checkBox2.Checked = true; + this.checkBox2.CheckState = System.Windows.Forms.CheckState.Checked; + this.checkBox2.Enabled = false; + this.checkBox2.Location = new System.Drawing.Point(26, 562); + this.checkBox2.Name = "checkBox2"; + this.checkBox2.Size = new System.Drawing.Size(165, 17); + this.checkBox2.TabIndex = 14; + this.checkBox2.Text = "Skip file if it\'s missing columns"; + this.checkBox2.UseVisualStyleBackColor = true; + // + // textBox2 + // + this.textBox2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left))); + this.textBox2.Enabled = false; + this.textBox2.Location = new System.Drawing.Point(32, 533); + this.textBox2.Name = "textBox2"; + this.textBox2.Size = new System.Drawing.Size(131, 20); + this.textBox2.TabIndex = 15; + this.textBox2.Text = "Username column name"; + // + // listBox1 + // + this.listBox1.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left))); + this.listBox1.FormattingEnabled = true; + this.listBox1.Location = new System.Drawing.Point(12, 193); + this.listBox1.Name = "listBox1"; + this.listBox1.Size = new System.Drawing.Size(194, 173); + this.listBox1.TabIndex = 7; + // + // listBox2 + // + this.listBox2.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) + | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.listBox2.FormattingEnabled = true; + this.listBox2.HorizontalScrollbar = true; + this.listBox2.Location = new System.Drawing.Point(215, 375); + this.listBox2.Name = "listBox2"; + this.listBox2.Size = new System.Drawing.Size(209, 173); + this.listBox2.TabIndex = 11; + // + // listView1 + // + this.listView1.Alignment = System.Windows.Forms.ListViewAlignment.Default; + this.listView1.AutoArrange = false; + this.listView1.LabelEdit = true; + this.listView1.Location = new System.Drawing.Point(215, 193); + this.listView1.MultiSelect = false; + this.listView1.Name = "listView1"; + this.listView1.ShowGroups = false; + this.listView1.Size = new System.Drawing.Size(209, 173); + this.listView1.TabIndex = 20; + this.listView1.UseCompatibleStateImageBehavior = false; + this.listView1.View = System.Windows.Forms.View.List; + this.listView1.AfterLabelEdit += new System.Windows.Forms.LabelEditEventHandler(this.listView1_AfterLabelEdit); + // + // Form1 + // + this.AllowDrop = true; + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink; + this.BackColor = System.Drawing.Color.WhiteSmoke; + this.ClientSize = new System.Drawing.Size(439, 647); + this.Controls.Add(this.listView1); + this.Controls.Add(this.label6); + this.Controls.Add(this.linkLabel2); + this.Controls.Add(this.linkLabel1); + this.Controls.Add(this.label5); + this.Controls.Add(this.textBox2); + this.Controls.Add(this.checkBox2); + this.Controls.Add(this.checkBox3); + this.Controls.Add(this.checkBox1); + this.Controls.Add(this.textBox1); + this.Controls.Add(this.label4); + this.Controls.Add(this.label3); + this.Controls.Add(this.listBox2); + this.Controls.Add(this.button2); + this.Controls.Add(this.button1); + this.Controls.Add(this.label2); + this.Controls.Add(this.listBox1); + this.Controls.Add(this.progressBar1); + this.Controls.Add(this.label1); + this.Controls.Add(this.BTN_Browse); + this.Controls.Add(this.TXTBX_Directory); + this.Controls.Add(this.Logo); + this.Controls.Add(this.menuStrip1); + this.DoubleBuffered = true; + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle; + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.MainMenuStrip = this.menuStrip1; + this.MaximizeBox = false; + this.Name = "Form1"; + this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; + this.Text = "Ini->Sql"; + this.Load += new System.EventHandler(this.Form1_Load); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.LinkLabel linkLabel2; + private System.Windows.Forms.Label label6; + private System.Windows.Forms.LinkLabel linkLabel1; + private System.Windows.Forms.Label label5; + public System.ComponentModel.BackgroundWorker backgroundWorker1; + private System.Windows.Forms.Button button2; + private System.Windows.Forms.Button button1; + private System.Windows.Forms.Label label2; + private System.Windows.Forms.ProgressBar progressBar1; + private System.Windows.Forms.MenuStrip menuStrip1; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.FolderBrowserDialog folderBrowserDialog1; + private System.Windows.Forms.Button BTN_Browse; + private System.Windows.Forms.TextBox TXTBX_Directory; + private System.Windows.Forms.Button Logo; + private System.Windows.Forms.Label label3; + private System.Windows.Forms.Label label4; + private System.Windows.Forms.TextBox textBox1; + private System.Windows.Forms.CheckBox checkBox1; + private System.Windows.Forms.CheckBox checkBox3; + private System.Windows.Forms.CheckBox checkBox2; + private System.Windows.Forms.TextBox textBox2; + private System.Windows.Forms.ListBox listBox1; + private System.Windows.Forms.ListBox listBox2; + private System.Windows.Forms.ListView listView1; + + + } +} + diff --git a/Source Code/Form1.cs b/Source Code/Form1.cs new file mode 100644 index 0000000..fbf216c --- /dev/null +++ b/Source Code/Form1.cs @@ -0,0 +1,404 @@ +/* + ██╗███╗ ██╗██╗ ██╗ ███████╗ ██████╗ ██╗ + ██║████╗ ██║██║ ╚██╗ ██╔════╝██╔═══██╗██║ + ██║██╔██╗ ██║██║█████╗╚██╗███████╗██║ ██║██║ + ██║██║╚██╗██║██║╚════╝██╔╝╚════██║██║▄▄ ██║██║ + ██║██║ ╚████║██║ ██╔╝ ███████║╚██████╔╝███████╗ + ╚═╝╚═╝ ╚═══╝╚═╝ ╚═╝ ╚══════╝ ╚══▀▀═╝ ╚══════╝ + + The MIT License (MIT) + + Copyright (c) 2014 GtakillerIV + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + +*/ + + +using System; +using System.IO; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; +using System.Collections; +using System.Text.RegularExpressions; +using System.Diagnostics; + +namespace IniToSQL +{ + public partial class Form1 : Form + { + string query; + public const int MAX_INSERTS = 270; + bool containsSpaces = false; + + ArrayList columns = new ArrayList(); + int accCount; + + notification noti = new notification(); + + DirectoryInfo di; + + public Form1() + { + InitializeComponent(); + } + + private void BTN_Browse_Click(object sender, EventArgs e) + { + DialogResult result = folderBrowserDialog1.ShowDialog(); + if(result == DialogResult.OK) + { + button1.Enabled = false; + string dir = folderBrowserDialog1.SelectedPath; + TXTBX_Directory.Text = dir; + this.Invoke(new MethodInvoker(delegate { progressBar1.Value = 0; })); + dir = folderBrowserDialog1.SelectedPath; + di = new DirectoryInfo(@dir); + accCount = Directory.GetFiles(dir, "*.ini").Length; + label5.Text = "0/" + accCount + " Files done"; + label1.Text = "Found a total of " + Directory.GetFiles(dir, "*.ini").Length.ToString() + " Account(s)"; + listBox1.Items.Clear(); + listView1.Items.Clear(); + columns.Clear(); + int accsDone = 0; + float perc = 0.0f; + int columnsCount = 0; + + bool checkedSpaces = false, studiedAcc = false; + + foreach (var fi in di.GetFiles("*.ini")) + { + if (studiedAcc == false) + { + var lines = File.ReadLines(fi.FullName); + + foreach (var line in lines) + { + if (Regex.Match(line, @"^[A-Za-z0-9]").Success) + { + var field = line.Split('='); + + columnsCount++; + field[0] = field[0].Replace(" ", string.Empty); + listView1.Items.Add(field[0]); + columns.Add(field[0]); + + + if (checkedSpaces == false) + { + if (line[line.IndexOf("=") + 1] == ' ') containsSpaces = true; + checkedSpaces = true; + } + } + + } + studiedAcc = true; + } + + + if (accsDone < 21) + { + listBox1.Items.Add(fi.Name); + } + else + { + //Why continue if there's really nothing else left to do? + //Waste of time + resources + listBox1.Items.Add("+" + (accCount-20) + " more"); + accsDone = accCount; + this.Invoke(new MethodInvoker(delegate { progressBar1.Value = 100; })); + break; + } + accsDone++; + perc = (float)accsDone / (float)accCount * 100; + this.Invoke(new MethodInvoker(delegate { progressBar1.Value = (int)Math.Ceiling(perc); })); + } + label2.Text = columnsCount + " columns Found"; + button1.Enabled = true; + textBox1.Enabled = true; + checkBox1.Enabled = true; + checkBox2.Enabled = true; + checkBox3.Enabled = true; + } + } + + private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) + { + GenerateQuery(columns); + } + + private void GenerateQuery(ArrayList columns) + { + Stopwatch stopWatch = new Stopwatch(); + stopWatch.Start(); + int count = 0; + bool containsUsername = true, addedUsername = false, dontWrite = false; + this.Invoke(new MethodInvoker(delegate + { + progressBar1.Value = 0; + listBox2.Items.Clear(); + + if (!checkBox1.Checked && textBox2.Text != "Username field name") + { + containsUsername = false; + checkBox1.Enabled = false; + columns.Insert(0, textBox2.Text); + } + + if (checkBox3.Checked) + { + query = "INSERT IGNORE INTO `" + textBox1.Text + "` ("; + } + else + { + query = "INSERT INTO `" + textBox1.Text + "` ("; + } + })); + + for (int i = 0; i < columns.Count; i++) + { + query += "`" + columns[i] + "`" + ","; + } + + query = query.Remove(query.Length - 1); + + query += ") VALUES "; + + string Finalquery = query + "("; + + StreamWriter file = new StreamWriter("Query.sql"); + + file.Write("/*\t\t*********************************************\r\n"); + file.Write("\t\t* *\r\n"); + file.Write("\t\t* Generated by Ini->Sql *\r\n"); + file.Write("\t\t* Created by GtakillerIV *\r\n"); + file.Write("\t\t* *\r\n"); + file.Write("\t\t**********************************************\r\n*/\r\n"); + + int dataLine = 0; + ArrayList data = new ArrayList(); + string Line = null; + float perc = 0.0f; + + int accsDone = 0; + int s; + float f; + foreach (var fi in di.GetFiles("*.ini")) + { + if (backgroundWorker1.CancellationPending) break; + if (fi.Length == 0)// Is the .ini file empty? + { + this.Invoke(new MethodInvoker(delegate { listBox2.Items.Add("Skipping" + fi.Name + " due to it being empty."); })); + count++; + accsDone++; + continue; + } + //Console.WriteLine("File: " + fi.Name); + var lines = File.ReadLines(fi.FullName); + + foreach (var line in lines) + { + if (Regex.Match(line, @"^[\w]").Success) + { + if (containsSpaces) + { + Line = line.Remove(0, line.IndexOf("=") + 2); + } + else + { + Line = line.Remove(0, line.IndexOf("=") + 1); + } + Line = Line.Trim(); + Line = Line.Replace("\"", string.Empty); + if(Line.Contains(";")) Line = Line.Remove(Line.IndexOf(";")); + Line = Line.Replace("\u0001", "");//Get rid of SOH + + if (!float.TryParse(Line, out f)) Line = Regex.Escape(Line); + + data.Add(Line); + dataLine++; + } + } + if (count < MAX_INSERTS) + { + string Format = ""; + if (checkBox2.Checked) + { + if ((!containsUsername && columns.Count > dataLine+1) || (containsUsername && columns.Count > dataLine)) + { + this.Invoke(new MethodInvoker(delegate { listBox2.Items.Add("Skipping " + fi.Name + " due to invalid column count"); })); + count++; + accsDone++; + dontWrite = true; + continue;//Let's get out of here! + } + + } + for (int i = 0; i < dataLine; i++) + { + if(!int.TryParse(data[i].ToString(), out s ) && !float.TryParse(data[i].ToString(), out f)) + { + if (!containsUsername && !addedUsername) + { + Format = string.Format("\"{0}\"", Regex.Escape(Path.GetFileNameWithoutExtension(fi.Name))); + Finalquery += Format + ","; + addedUsername = true; + } + Format = string.Format("\"{0}\"", data[i]); + } + else + { + Format = string.Format("{0}", data[i]); + } + Finalquery += Format + ","; + } + + Finalquery = Finalquery.Remove(Finalquery.Length - 1); + if (count >= MAX_INSERTS-1 || accCount-accsDone <= 1) + { + Finalquery += ");"; + } + else + { + Finalquery += "),"; + } + count++; + } + else + { + count = 0; + Finalquery = query; + } + if (!dontWrite) + { + file.WriteLine(Finalquery); + } + dataLine = 0; + Finalquery = "("; + data.Clear(); + accsDone++; + dontWrite = false; + addedUsername = false; + perc = (float)accsDone / (float)accCount * 100; + this.Invoke(new MethodInvoker(delegate + { + label5.Text = accsDone + "/" + accCount + " Files done"; + progressBar1.Value = (int)Math.Ceiling(perc); + + })); + + } + + file.Close(); + + stopWatch.Stop(); + + this.Invoke(new MethodInvoker(delegate + { + + + int width = Screen.PrimaryScreen.WorkingArea.Right; + int height = Screen.PrimaryScreen.WorkingArea.Height; + + if (backgroundWorker1.CancellationPending) noti.label2.Text = "Conversion of accounts was interrupted!"; + else noti.label2.Text = "Conversion of accounts has finished successfully!"; + + if (!noti.Visible) + { + noti.Location = new Point(width - noti.Size.Width, height - noti.Size.Height); + noti.Show(); + } + + button1.Enabled = true; + button2.Enabled = false; + textBox1.Enabled = true; + checkBox1.Enabled = true; + progressBar1.Value = 0; + label6.Text = "Finished in " + stopWatch.ElapsedMilliseconds + " ms"; + + })); + + } + + private void button1_Click(object sender, EventArgs e) + { + + if (textBox1.Text == "Table name" || textBox1.TextLength == 0) + { + MessageBox.Show(null, "Enter in a proper table name", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error ); + } + else + { + button1.Enabled = false; + button2.Enabled = true; + textBox1.Enabled = false; + + backgroundWorker1.RunWorkerAsync(); + + } + } + + private void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e) + { + + } + + private void button2_Click(object sender, EventArgs e) + { + backgroundWorker1.CancelAsync(); + } + + private void Form1_Load(object sender, EventArgs e) + { + + } + + private void progressBar1_Click(object sender, EventArgs e) + { + + } + + private void checkBox3_CheckedChanged(object sender, EventArgs e) + { + + } + + private void Logo_Click(object sender, EventArgs e) + { + + } + + private void checkBox1_CheckedChanged(object sender, EventArgs e) + { + if (checkBox1.Checked) textBox2.Enabled = false; + else textBox2.Enabled = true; + } + + private void listView1_AfterLabelEdit(object sender, LabelEditEventArgs e) + { + columns[e.Item] = e.Label; + } + } +} diff --git a/Source Code/Form1.resx b/Source Code/Form1.resx new file mode 100644 index 0000000..382c29a --- /dev/null +++ b/Source Code/Form1.resx @@ -0,0 +1,228 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 301, 17 + + + 186, 17 + + + 17, 17 + + + 49 + + + + + AAABAAIAEBAAAAAAIABoBAAAJgAAACAgAAAAACAAqBAAAI4EAAAoAAAAEAAAACAAAAABACAAAAAAAEAE + AAAAAAAAAAAAAAAAAAAAAAAADg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//OBwT/y4Z + Ev8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/0ch + Ff9nLRn/Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/ycWEf96Mxv/mD4f/3UyG/8nFhH/Dg4P/1wo + F/+NOh3/mj8f/w4OD/9oLBn/GBEP/w4OD/8ODg//Dg4P/w4OD/9JIhX/YSoY/xkREP83GxP/mj8f/0gh + Ff+XPh//KRYR/5xAH/8eExD/fDQc/z0eFP8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//GBEP/18p + Rf9CHlj/gDVL/w0NM/9jKyL/SSIV/1cnF/9XJxf/Dg4P/w4OD/8ODg//Dg4P/w4OD/82GxP/oEEg/5c+ + Hv9EH3v/Cgq5/xQNrf8KCrn/XylG/2suGv89HhT/fDQc/w4OD/8ODg//Dg4P/w4OD/8ODg//UiYX/3Yy + G/8ODg//DQ0t/woKt/8LC4D/Qh8U/1spGP88HhT/GBEP/5g+H/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/9iKxj/kzwe/55AH/86G4P/Cgq3/w0NLf8ODg//Dg4P/w4OD/+gQSD/Ew8P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8TDx3/DQ00/woKuf8LC4D/Dg4P/w4OD/8ODg//VCYX/xMPD/8ODg//Dg4P/w4O + D/8ODg//DT97/wxTpf8NR5D/Cgq5/wsYf/8KIL3/Cgqo/w09dv8NJUL/DTZl/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w0YJv8NP3v/DF26/woKqv8LDpr/Cha+/wsLlf8NSpL/DTBa/wxfv/8NIj3/Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//DSI9/wxhw/8NDSj/DAxe/ws+wv8NIUj/DTls/w06b/8NSpL/DTFd/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4RF/8MadT/Dg4P/w4OD/8MVav/DGrV/w1Kkv8NSpL/DTVj/w1D + gv8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//DGbN/w0bLv8ODg//DStO/w0rUP8NQ4L/DR80/w4T + HP8NIjz/Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//DF27/wxz5/8Ma9b/DGHC/w4OD/8ODg//Dg4P/w4O + D/8ODg//DFq1/w4RF/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4RF/8OFB//DhQf/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4WIf8ODg//Dg4P/wAA//8AAP//AAD//wAA//8AAP//AAD//wAA//8AAP//AAD//wAA + //8AAP//AAD//wAA//8AAP//AAD//wAA//8oAAAAIAAAAEAAAAABACAAAAAAAIAQAAAAAAAAAAAAAAAA + AAAAAAAADg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/yQUEf8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//oUIg/5A7Hv8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/+QOx7/oUIg/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/3MwGv+5SyT/NhoS/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8kFBH/XSgX/300G/9zMBr/XSgX/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/zYaEv9dKBf/aCwY/7lL + JP9oLBj/Dg4P/w4OD/8kFBH/USMV/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//czAa/7FII/+5SyT/uUsk/7lLJP+5SyT/sUgj/3MwGv8ODg//Dg4P/w4OD/9zMBr/uUsk/7lL + JP+5SyT/uUsk/5A7Hv8ODg//Dg4P/3MwGv+5SyT/NhoS/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/+hQiD/sUgj/10oF/8kFBH/JBQR/0QfFP99NBv/uUsk/4Y3HP8ODg//RB8U/7lL + JP+QOx7/RB8U/0QfFP+hQiD/sUgj/w4OD/8ODg//XSgX/7lLJP9dKBf/Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/2gsGP9oLBj/Dg4P/w4OD/8ODg//Dg4P/w4OD/9zMBr/uUsk/3Mw + Gv9dKBf/uUsk/10oF/8ODg//Dg4P/2gsGP+5SyT/USMV/w4OD/8kFBH/uUsk/300G/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/yQU + Ef+5SyT/fTQb/1EjFf+5SyT/czAa/w4OD/8ODg//JBQR/7lLJP9zMBr/Dg4P/w4OD/+pRSL/mD4f/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/82GhL/gDUu/yIRsv8yF5r/CwuY/3EveP9mKnf/DQ1e/w0NUv8ODjb/oUIg/5g+H/8ODg//Dg4P/5g+ + H/+pRSL/Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//JBQR/4Y3 + HP+hQiD/oUIg/7lLJP+YPlr/Cgq5/woKuf8KCrn/Cgq5/woKuf8KCrn/Cgq5/wwMc/+GNxz/sUgj/w4O + D/8ODg//fTQb/7lLJP8kFBH/Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/+YPh//uUsk/6FCIP+GNxz/fTQb/2QqK/8KCrH/Cgq5/woKuf8LC6n/Mhea/woKuf8KCrn/UyNs/5g+ + H/+5SyT/NhoS/w4OD/9dKBf/uUsk/10oF/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/7FII/+hQiD/Dg4P/w4OD/8ODg//Dg4P/wwMc/8KCrn/Cgq5/woKsf8ODiX/XSgX/5A7 + Hv+pRSL/qUUi/6FCIP82GhL/Dg4P/zYaEv+5SyT/czAa/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//fTQb/7lLJP9zMBr/Dg4P/w4OD/8ODg//Dg4l/woKsf8KCrn/Cgq5/wwM + c/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/7FII/+GNxz/Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//fTQb/7lLJP+hQiD/fTQb/300G/+hQiD/Zip3/woK + uf8KCrn/Cgqx/w4OJf8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//oUIg/6FCIP8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//RB8U/5A7Hv+hQiD/uUsk/6FC + IP9uLi3/Cgqx/woKuf8KCrn/DAxz/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/+GNxz/uUsk/yQU + Ef8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8kFBH/Dg4P/w4OD/8MDH3/Cgq5/woKuf8KCrH/Dg4l/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/2gs + GP+5SyT/JBQR/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w0NRf8ODg//Dg4P/w4ONv8KCrn/Cgq5/woKuf8MDHP/Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/yQUEf8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w0+ + fP8NPnz/Dhsv/w4bL/8OGy//Cgq5/woKuf8KCrn/Dg4P/wscqv8KCrn/Cgq5/wsLmP8ODg//DVOm/w4l + Rv8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8NNmz/DHr1/wx69f8MevX/DHr1/wxv7v8KCrn/Cgq5/woKuf8NPnz/C1La/woKuf8KCrn/CwuY/w4b + L/8MevX/DVOm/w4OD/8NTJj/DHDg/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8NNmz/DT58/w1lyv8MevX/DVOm/woKuf8KCrn/Cgq5/w4aPf8LPc7/Cgq5/woK + uf8LC5D/Dhsv/wx69f8NU6b/Dg4P/w1MmP8MevX/Di5a/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//DUyY/wx69f8OLlr/DAx9/woKuf8KCrn/Cgq5/woK + uf8KCrn/Cgq5/w0NUv8OGy//DHr1/w1Tpv8ODg//DT58/wx69f8NPnz/Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8NPnz/DHr1/w0+fP8ODg//DAxz/wsL + of8KCrn/Cgq5/woqxP8NF1//Dg4P/w4OD/8MatX/DWXK/w4OD/8OLlr/DHr1/w1MmP8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4uWv8MevX/DVOm/w4O + D/8ODg//Dg4P/w4OD/8NTJj/DHr1/w1Tpv8ODg//Dg4P/w1fvv8MatX/Dg4P/w4OD/8Mdev/DV++/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dhsv/wx6 + 9f8NWbL/Dg4P/w4OD/8ODg//Dg4P/w0+fP8MevX/DHr1/w1MmP8ODg//DVOm/wx69f8OGy//Dg4P/w1l + yv8MatX/Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//DGrV/wxq1f8ODg//Dg4P/w4OD/8ODg//DiVG/wx69f8MatX/DHr1/w1fvv8MatX/DHr1/w4b + L/8ODg//DVOm/wx69f8OGy//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8NWbL/DHr1/w4bL/8ODg//Dg4P/w4OD/8ODg//DHXr/w1Tpv8NPnz/DGrV/wx6 + 9f8NU6b/Dg4P/w4OD/8OJUb/DVOm/w4bL/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w1MmP8MevX/DTZs/w4OD/8ODg//Dg4P/w4OD/8OGy//Dg4P/w4O + D/8ODg//Dhsv/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w1Fiv8NU6b/DV++/wx69f8NX77/DVmy/wxq1f8NTJj/Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w1Fiv8NTJj/Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//DWXK/wx69f8MevX/DHr1/wx69f8MevX/DHXr/w1Z + sv8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//DV++/wx69f8OGy//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dhsv/w4bL/8OGy//Dhsv/w4b + L/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Di5a/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4OD/8ODg//Dg4P/w4O + D/8ODg//Dg4P/w4OD/8ODg//Dg4P/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + + + \ No newline at end of file diff --git a/Source Code/IniToSQL.csproj b/Source Code/IniToSQL.csproj new file mode 100644 index 0000000..a5dba79 --- /dev/null +++ b/Source Code/IniToSQL.csproj @@ -0,0 +1,175 @@ + + + + + Debug + AnyCPU + {9EFA2AAB-324E-4946-AAA6-92D7F6DC3FB6} + WinExe + Properties + IniToSQL + IniToSQL + v4.5 + 512 + false + + publish\ + true + Disk + false + Foreground + 7 + Days + false + false + true + 1 + 1.1.1.1 + false + true + true + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + true + false + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + false + + + ini2sql_ico.ico + + + true + + + 105591D9F5A5B498EF19A1443831BC5EB8243943 + + + IniToSQL_TemporaryKey.pfx + + + false + + + IniToSQL_TemporaryKey.pfx + + + true + + + LocalIntranet + + + Properties\app.manifest + + + + True + + + + + + + + + + + + + + + + Form + + + Form1.cs + + + + Form + + + notification.cs + + + + + Form1.cs + + + notification.cs + + + ResXFileCodeGenerator + Resources.Designer.cs + Designer + + + True + Resources.resx + True + + + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + True + Settings.settings + True + + + + + + + + + + + + + + False + Microsoft .NET Framework 4.5.1 %28x86 and x64%29 + true + + + False + .NET Framework 3.5 SP1 Client Profile + false + + + False + .NET Framework 3.5 SP1 + false + + + + + \ No newline at end of file diff --git a/Source Code/v1.1/IniToSQL.csproj.user b/Source Code/IniToSQL.csproj.user similarity index 100% rename from Source Code/v1.1/IniToSQL.csproj.user rename to Source Code/IniToSQL.csproj.user diff --git a/Source Code/v1.0/IniToSQL.sln b/Source Code/IniToSQL.sln similarity index 100% rename from Source Code/v1.0/IniToSQL.sln rename to Source Code/IniToSQL.sln diff --git a/Source Code/v1.0/IniToSQL.v11.suo b/Source Code/IniToSQL.v11.suo similarity index 100% rename from Source Code/v1.0/IniToSQL.v11.suo rename to Source Code/IniToSQL.v11.suo diff --git a/Source Code/IniToSQL.v12.suo b/Source Code/IniToSQL.v12.suo new file mode 100644 index 0000000000000000000000000000000000000000..f877a2eaa02be275092009e0fc534dfd6751e995 GIT binary patch literal 49152 zcmeHQdvIITnZF9J1i~W)QVJ9l2oOjtWLuW)yg-)Z#NZGoHVG7^jx1j}N@PjV!-DdO$E-5RrgR*ZE9XtO`6`>Y9{PoU zcVyoQ*Hwu3vztZa0pyrg_9}hIJ&v=ma?mD~(#Olu1C8h|eQJI6Roq7R)xwYxRdUKc zrC&+lm{;z_zlt)+`#C*crNc^Pk?RsXya~W^RElT3{}o&;)^F@YzA0rCH9w$iL0M9O zF|7n1Wk7qD!quqKi!w!(ah#Wy$X`eOzl^+>>iI9j@e?BganA9~a3P+tZs!3m2k@Of zz%_si09OE(1Fi%RpM38#I9>{1{g_4o$7}WT2#%izTnD%wumZq1H{f_9U?qTfWY@R_ z!2WbAU_F5Gs)csMxyV7h4TvM_C({e+?}cy-19|~%`aQhaBGsP@iWK0BS`|M|?SxfuU0BYuEh+t3{U#qlq3C+WaWV2}4W_T@7kIsT2; z=i|EC`2Q@PlXjfW@xRGbMq_#9c`f6AGtwiyt2X|>P$f^}7$?nS85Y|3XBj1&i!zed zvu#P=NyEwGk*+ch=|AZm+m$q)G@t#3G@t#0{eg1<=LDIiJhJ|r2aNRJjcd*Ur2mXZ z`p@IdI2!5yZMa?ySOaJQ+zGfH;03e-NUKTzeSi*tAJ7Tt0(1kI<~kfXkFfnW0`36F zvi0Dc?JVg(@3Swl{dq3izaQ6I0GtOT{ojW3?SMhR5MT#@?{FO52N(mek30b2{KseP z1H*vbfGA)D5CebkF#l=L}y%oUa3p>Tw^(@f(0|>eo-;_@sW$_}{|$Q-E&+o&h`ykm>Sy zGb}6&>`;P=8=Q>b!d3J`_9Ev2{I|=6=p2u%nUgm;H;}e4Y(7T~z97Qla(%uChc%4d6Ua#Fvr%bzr*S|I;_IUdFX zpZStDI?ewv#QhgN(KDd^U7SBycLu#$RS(VfFSh?6B+sNa1`{|-fg13idH~+vs$_63 zo^XaK51u;4-&IJ)>GHo)&n(Y5}`IC>Y7C8PX8?ZY&?f=IS_bok9yZpQKc$E(I)c)FH`d@%Zl#!g)e+qGz=?RnHOF&{!L2criw6X!Tnbd@38Ntjj zrc8kfr65VT5oZ7zQp!^6lne16P>zFWP!3$Ayy6P2_2PG^JKP&+3j}&v+S`2L7GJl| z-x3G}{4L#Wq0U}^DA?ZH<3Bvrmr4w!2e}|MHd4r`*<55iy(c=Zjz&h) zvBJ2T%I6{ziCiI?bm#Jg(L~za=51|@@D(+NXUAPZWi2EtskhDHd>nJv9$i~Hit7-r zW2gzWr<~guX9sGX!@VeGIk(1h79f9drgMYpdLdV~Ay#SY@IC6O6Oi=McxM~5#xl+r zT8sKw4|2*Wzxm|hH6K2*>Hg4>$per5@;#zTYaOK_D8;|IqU zfi^{=Glv}G7@O{@BePZOrCz*Axg~;fGDMJW7UwJ}brIGjwJyU_#GgqSeji+d6pUq< zKuMhA?}?{A*!H{U+CE;q>d5Wm-ABVk%p{Nsx$ychLkT*GQ61OtBJm@yi!HiMqh;jv zb2uxYoid<$QM|Pe|FlGTKtGvU6gCjG%sS}9{BtAfe;t6-fw-^>_alOgcpu7`H05Y7 zbrf^p{Lg%;Q*fI9!-y;84`cmH>s_tZ#r$v6^C#czH2-@M_gX!P9hgT3!0&Iz7#YBP z8U&UD$|l?y)L;-Z&Q?w1Sj^LShWs^q8S`c^KC5)j=}6YUILiyG;}*0r=TF*!jkZZ^ z>5n?uMXpn~?`A%`Wknv?S?YN2FK)<^a~4<20ua9aPX5qG^Ve=%R`y0WM#d66QOk|h&5IVqP* z4n~${E%HAH7wk_?^QWvQ-!IK&2<0e%667^LhxT}K1|0oD2O!@n9=&zQ|Hk~Q@!uij zYR3cD!+#TBPf^%K=s_LR=xwZJ7DuP;F5V{IYu7)r=~w9qNIwJVe=rEnl~~V%0#h?u zY23;D>#0BIJK6ttXmp=ANMf!}qc;v}y>SA#kKxQN+<^XfB_dq`aN7SKL0ldEpaWvY z;RvAqgME*EoOzQrOkl?MYStg?l92u}Um2`pmEJY>zaiwoJdG5_18Q7A8HkBIenKyu zn;x6Sd2l`Ie<_l$C4bV3zt_jVnf~q6Mq3QM!0hQ!S_gSW`OjNp{znj>?Zps8yVC_(L+jfijlm-FumJRlCt&#kVF_`er;Ce@8X`l6ppDLu05{j?pvf}$Dg{0y2U4vJH`h^r>Pw|wb-UKj!l-Wo zJ>7$xsqu9lu0sD~yK_#fr~RGhR5>Q|m7#L1xqBk>=5g+Fshsjm@;B>7jC61Sy@51Y z&i+=T0rS6$x+LoKoz_2qxYQdlRLfuLbgGR5*dJV!;oJbH`5Wnvwf!TGT908gQl}$p zj|?mV_+Kqw*#;I-%5L3+I}3IXp?NTryEOD@1h#=&miuvE6o4J{3pSak|RqZcI6=RzaCMX*5BCwdm(Lx z!D0FEAH=NC0*gDfpS?Jvwk3q?;pthqoI8g6G2Qk~^XL3?H4BX3EdL?I+k)~%(JxA= zP(A*y%(uvYTJe7azpD`a$)Ci1TQ%h4ndE)`)_zl?+|qt9_X0D zkj9FB<_AD~C=sv0Tp^`1`UY%(Oy)!U4oz=*-wDmQp)egAR9QY=Stfx~N4x_xh*Zd< z{ae1M-y|J>9+Y8zZ9pmDihKh3hM0k85Y`|;ZC;)CQVQ8BqqQbWOUl<1931$;Z67^% zPg`%_OD{h8kN@+|9j|^0W$vb)!QcRJJKvZ!+uH<2Gw7LIHS)seE_wg8y(e7Ms4nc1 zdcaMHl_j@sefFcb<0o9eeDD&KyU2l|R^^F+Hqw?wI}+u1TC_Idj_|CZTrbwu3Cr{__?d3VI-Q8=*XU;p z=%tEtFC-x!{yXt&0R`o81ZQy^+wg0Jv>3&k)FMVTo`oJDEE)MKt2s9Ud{E=c(v6^Y zlhf7~(ZYP!*^CxI?K0ESNkr2elK)7;7A|Wasf)Msl$9|6j8QJ2PXH|w?3=~%&Q>dU zfk{8+GcRVi4gjT4AFxiz)Q4wn0JcI1XKa}+aI76DYY6Z3Xir0E$2LRBsGZmX91Bl} zVu{(ys?#2}17+39v8+cZ-&;|!?S;m*s9hiyE2rbGn2y;xQ7skX!0hM4QqpQ`ykEH- zv(>&~jG6#|8ir1-ExkBnd$N6d&~|Kdw!I%b4cnJ*us6^S)Pq*;K-_ji`%?2FMw#?V z5p5g__xG`mF+3M@TxqPzUMXy$IDnSu6zGl$iKKMI3f`IiD`qc^2x=o&>PiW!+6atH zOH&c_&`FFbjx73-Nu7fSbcLKBY33M?q;(wOx&lF?G+Z&%m~|ws#7r}WI@{NDq(N&c z{9K&WkovyU*Os$j|JAsSTI|1vP(wN24`Bq+<49^4ME@6~j?}1W{{^zD1lWHy{9leZ zaoqjZlGim>wJ$hxd9C1#Q^9s-H$MqLcrqkE!XRp@wHQU`VH5Z3 zEljOJV^FAauGE8))3c0HaK=$>X&e6f_b+(?C114`XoYeIaxVQZjgl^Z<1 z2i!ev31*pCa@f+=Ak(Bapf=t(QFBce3ja?lIQe~Af=Q9+pJPAYj5TO|C5KE;$P~0b zc6FtEwDXp%jJ0cIS>8O)(27&a zkH{Ft8WRJo_1VN@aUDr1W+Z=Br23UPH7o2jDsNJ(x1jmueMZKxs`Z&T>rq>2?i=NE zq!l*KeD0ijYBO%^ID0EhHNG5f#DY}~&n#Uj*B%&aOe$&Asaj#cs9`j&e>+>&|2+tt z(Qk;sSpTze{oj1}|B+Tn{M-58Nk0Xxu`K@Rf5-IBX8%80_v+pMg*tYz%Y#_|S%?4k zw6}p%{qqFMJB$9`t`?*R#|OvyZ}QW!|C#Gw^uI1zXc4_)sK@_$CsO;h?r~8$f5-mc zHRIpt|K!a7T3Al^Vy2OMvq^;1 zf5!GFf52-A^fja}JFU%3leC5D^Eo9D(iwU!lJB4g1$7kU%V~e2P3cO&asbx@$u#AW zYn16LPZ^Ky|8Bqv0BQG)0LHsXKi-1lD!{FP+W@NpYXBVUcLKQIAo~&L2l{BY1AKrE zfFIBa=mK;DnC?0p*8?^HHUjPd@P0r)_Td-;(2tV$H{r-W!gKmQ+zsdlYysQ@*a{c` zYy)fuFdl)r7kPdk&Z&+20^k8a1i)wHv4;V>0a3sRfKuuxfWB7bP#KSWS^}^auus1? zj$;at24n#H0a*Z7MdSf8?*lkLXtX!?MsFO^rb@n}rVt#R+b7Hx@iYC~(A$IIUucd(Gm z7qaSxlv>DVqscYyfx<{K5xZNR97^v~QyWIS?eUIyXS}s_w8I;1kDkXVW4(Q@!E`F0 zO(&CT*0a5k8dUT7L~1M-isqx|A%T_a`*OXBq^jQ!#PW#=b>qI_;ht!0A0qZ9)a2+5 z>+vQl5{RP)J%vPa)Ewpd^+VC@n3^9*M)Tal%=~=KmUJ$^U5#NQy5!`&IdznoYNc2W za$LHHobW z)v~U3TD#KuF0BV>SY5)BF5@4iK ze|i_>z`x7Y<@B(roQ}If77`v2yk|7-gHHvNCC)>!Rnm~m|9Gw5WV zr5?LBs#Wy)mA<;%AKi^qn*P6)cUP&l{;%A($w|x6;!s=5Ei4YH>HjNRnYJ~%u`Jal zh^hs09JP#H?xWHu(t&H&o?!tT1Fc*n+ z1!gR89YHA!2E*7DDGz(?Y^~*%-raI!FD)yjjA1Sv$20v^=8B@r?=Z;qI;Vf`W^Zl! z|Ib(Zm(MS=*XyN!x)aZRIWp)QQaXNXNyTdP#O84HoF42o{r?39=x1c^8|6H*RUe?I z%v@2>x$OgXKKydr&`x2-jorJ%lzH8yc`qX23HGFpz1jDWK@mhSx?#{E&+2nr8Mr!e z+dr|Clx{i+r(fxkyAjB*T=9!#{8F*#6|-M2r{%J;T!?jVbBA+d*(CaTB(Fi=v_>2$ zMZLOl6j;%M=K2q#g`qf<%>GM8PEc6XglFjY=6%c<$FjBMRCpu2GVdj=)p9Jpze-9j zzAb3~zU<+$h3JV<%lni>m`3UQa7*QqbACK=6cpF|@kDM8p?^FPRP;i{yn(DN6dj4p zfu9rLX9c*}H=?-S#B)jjc*Uh$X6}QF%5NQW#k9?S<#wu8&YCu5R@}(n@eBj=e`%TH zD8KQ8i7U0T3p747@1-N|7aor86-}&c<}S3xA9q<4zv^c)mOLUo?Y%)|c${-S_AXuZ4fO_E)iI{&0{k=LmyJSNw`MK7Hf5{_lNv^hZx$ z_ut)>Vk(OB_l1s*d-HNfWwAbjUvDaCyIKi$gKd+>7?yl#LWXM7gW&bXst2tMt-xZ+NS?Ktbf`C)CBgaf90#rN}!xzbzTx@>~} zGwx#TJ94vGwsk1|Y}b~$YJN$Q-z-wgzD(xV#!>?!U!5P2fW5ff!{%5m>!gI&^ zE4g-Mp)VHj!|^&#{%=dsDVyK_ZGQi^bUITmIP&(?hwuMn=S6M%fA#5K`~m&5WQ7?! zEANRgv(M3%ev9^WeKWf5GIOjF7|xLI|1Nl(FXnfm`C;kJ!L<=MU>m*=9-96_xbR$e z3)gk=h42CSh44Q8L*o&dkZ8Z+|5b_$Tx^SMSmoxQJ&p655g}y%iRV!@9)$z^aDF_~ z-W~{e^7I7OebvQRGCWwL#&42a@2xi%-$bvwe`}wJUMBJ6ejudg5@V@d+p1vRdj2|C z!Kr#1zT*y;^`Ue+nez-KGWaVbG6QhgkB+Ic=F+{PLhkg^w$9o!SV+^cpKjgk2P@Vy zu3U4#CuV1Tb{U19)QoPNzt823_gsUMxx6|K*KsUhz}kd#D(BgxrqpaA<_RUV8`13K z?zRUW&?64!vsksT#yy^krL)PzND&!6#|tewJEI-34u5NRyHE9Yb?;gu6E~J(b2PUn zA00^o-Lsk3E;6_m=&M5(W2HkTnpLxlncHCEK^6S(;wP&iMMq9}zvv+{f!(chilJRx z{--QqTQZ!>lZ9AJ7VaW&{^V?<;N-b`p72zwiSkX4Xr?DZ)BZ0pLG9-VE*eq$S?XQf zwEr9TQJ1)>)&AcY@?(ASTbnQ3;_LSLTLORLnr{n;y*9Uf`8D5tVQ=iGZ+?9I)ervp zKmMH~mQyZ60%CM47UYYoqGZC+ywAaCW?Br?gUV@u-yfS+a4K$1b5b-%@vDgZE?ESz zg45za1pFPp7D<1;7=Dzgl1OC)cf@Wd)^vq=%Y1n*!%Xf4ktb)0B)HDFRwh|Cd0i}# z%#V8GhXB^4Rh4%5&<#~(be!K0a$a}iEG72jAcb!F4^-?3(FV0!|Xjyr1{^pa1*L?WMru#!jCJ#LJ%lByNpVm;6YATM+ zbNS8t0UEDa(yyW9Uk4lo@Y&-yegp7L{rU+UDYNq#!?$q$6yV!{X8_LvWSSyI^M4^> zfU7-bV*l^gq~P@4so2^`p~N~nI&Gbu(DoH`=d_K*gmpF}t+O+;RZ6xAovc9(@-8Pv zW-G!szlg8RNIX*`6`PmAs94c#)rpXtHoaPC;lJrmJn?!DPpuzJC$){zHcm+$&J>fS zBySE*@6FWyZ+;zoQDKwUi@k+a5{`@=t_v7ODciva6XT*hXzbt5~cz*p; S?pbfNXi57c=YV=FTK^A=dz;<> literal 0 HcmV?d00001 diff --git a/Source Code/v1.1/MySQL.cs b/Source Code/MySQL.cs similarity index 100% rename from Source Code/v1.1/MySQL.cs rename to Source Code/MySQL.cs diff --git a/Source Code/v1.0/App.config b/Source Code/Older versions/v1.0/App.config similarity index 100% rename from Source Code/v1.0/App.config rename to Source Code/Older versions/v1.0/App.config diff --git a/Source Code/v1.0/Form1.Designer.cs b/Source Code/Older versions/v1.0/Form1.Designer.cs similarity index 100% rename from Source Code/v1.0/Form1.Designer.cs rename to Source Code/Older versions/v1.0/Form1.Designer.cs diff --git a/Source Code/v1.0/Form1.cs b/Source Code/Older versions/v1.0/Form1.cs similarity index 100% rename from Source Code/v1.0/Form1.cs rename to Source Code/Older versions/v1.0/Form1.cs diff --git a/Source Code/v1.0/Form1.resx b/Source Code/Older versions/v1.0/Form1.resx similarity index 100% rename from Source Code/v1.0/Form1.resx rename to Source Code/Older versions/v1.0/Form1.resx diff --git a/Source Code/v1.0/IniToSQL.csproj b/Source Code/Older versions/v1.0/IniToSQL.csproj similarity index 100% rename from Source Code/v1.0/IniToSQL.csproj rename to Source Code/Older versions/v1.0/IniToSQL.csproj diff --git a/Source Code/v1.1/IniToSQL.sln b/Source Code/Older versions/v1.0/IniToSQL.sln similarity index 100% rename from Source Code/v1.1/IniToSQL.sln rename to Source Code/Older versions/v1.0/IniToSQL.sln diff --git a/Source Code/v1.1/IniToSQL.v11.suo b/Source Code/Older versions/v1.0/IniToSQL.v11.suo similarity index 100% rename from Source Code/v1.1/IniToSQL.v11.suo rename to Source Code/Older versions/v1.0/IniToSQL.v11.suo diff --git a/Source Code/v1.0/IniToSQL.v12.suo b/Source Code/Older versions/v1.0/IniToSQL.v12.suo similarity index 100% rename from Source Code/v1.0/IniToSQL.v12.suo rename to Source Code/Older versions/v1.0/IniToSQL.v12.suo diff --git a/Source Code/v1.0/LICENSE b/Source Code/Older versions/v1.0/LICENSE similarity index 100% rename from Source Code/v1.0/LICENSE rename to Source Code/Older versions/v1.0/LICENSE diff --git a/Source Code/v1.0/Program.cs b/Source Code/Older versions/v1.0/Program.cs similarity index 100% rename from Source Code/v1.0/Program.cs rename to Source Code/Older versions/v1.0/Program.cs diff --git a/Source Code/v1.0/Properties/AssemblyInfo.cs b/Source Code/Older versions/v1.0/Properties/AssemblyInfo.cs similarity index 100% rename from Source Code/v1.0/Properties/AssemblyInfo.cs rename to Source Code/Older versions/v1.0/Properties/AssemblyInfo.cs diff --git a/Source Code/v1.0/Properties/Resources.Designer.cs b/Source Code/Older versions/v1.0/Properties/Resources.Designer.cs similarity index 100% rename from Source Code/v1.0/Properties/Resources.Designer.cs rename to Source Code/Older versions/v1.0/Properties/Resources.Designer.cs diff --git a/Source Code/v1.0/Properties/Resources.resx b/Source Code/Older versions/v1.0/Properties/Resources.resx similarity index 100% rename from Source Code/v1.0/Properties/Resources.resx rename to Source Code/Older versions/v1.0/Properties/Resources.resx diff --git a/Source Code/v1.0/Properties/Settings.Designer.cs b/Source Code/Older versions/v1.0/Properties/Settings.Designer.cs similarity index 100% rename from Source Code/v1.0/Properties/Settings.Designer.cs rename to Source Code/Older versions/v1.0/Properties/Settings.Designer.cs diff --git a/Source Code/v1.0/Properties/Settings.settings b/Source Code/Older versions/v1.0/Properties/Settings.settings similarity index 100% rename from Source Code/v1.0/Properties/Settings.settings rename to Source Code/Older versions/v1.0/Properties/Settings.settings diff --git a/Source Code/v1.0/README.md b/Source Code/Older versions/v1.0/README.md similarity index 100% rename from Source Code/v1.0/README.md rename to Source Code/Older versions/v1.0/README.md diff --git a/Source Code/v1.0/Resources/ini2sql.png b/Source Code/Older versions/v1.0/Resources/ini2sql.png similarity index 100% rename from Source Code/v1.0/Resources/ini2sql.png rename to Source Code/Older versions/v1.0/Resources/ini2sql.png diff --git a/Source Code/v1.0/notification.Designer.cs b/Source Code/Older versions/v1.0/notification.Designer.cs similarity index 100% rename from Source Code/v1.0/notification.Designer.cs rename to Source Code/Older versions/v1.0/notification.Designer.cs diff --git a/Source Code/v1.0/notification.cs b/Source Code/Older versions/v1.0/notification.cs similarity index 100% rename from Source Code/v1.0/notification.cs rename to Source Code/Older versions/v1.0/notification.cs diff --git a/Source Code/v1.0/notification.resx b/Source Code/Older versions/v1.0/notification.resx similarity index 100% rename from Source Code/v1.0/notification.resx rename to Source Code/Older versions/v1.0/notification.resx diff --git a/Source Code/v1.0/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/Source Code/Older versions/v1.0/obj/Debug/DesignTimeResolveAssemblyReferences.cache similarity index 100% rename from Source Code/v1.0/obj/Debug/DesignTimeResolveAssemblyReferences.cache rename to Source Code/Older versions/v1.0/obj/Debug/DesignTimeResolveAssemblyReferences.cache diff --git a/Source Code/v1.0/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/Source Code/Older versions/v1.0/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache similarity index 100% rename from Source Code/v1.0/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache rename to Source Code/Older versions/v1.0/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache diff --git a/Source Code/v1.0/obj/Debug/IniToSQL.Form1.resources b/Source Code/Older versions/v1.0/obj/Debug/IniToSQL.Form1.resources similarity index 100% rename from Source Code/v1.0/obj/Debug/IniToSQL.Form1.resources rename to Source Code/Older versions/v1.0/obj/Debug/IniToSQL.Form1.resources diff --git a/Source Code/v1.0/obj/Debug/IniToSQL.Properties.Resources.resources b/Source Code/Older versions/v1.0/obj/Debug/IniToSQL.Properties.Resources.resources similarity index 100% rename from Source Code/v1.0/obj/Debug/IniToSQL.Properties.Resources.resources rename to Source Code/Older versions/v1.0/obj/Debug/IniToSQL.Properties.Resources.resources diff --git a/Source Code/v1.0/obj/Debug/IniToSQL.csproj.FileListAbsolute.txt b/Source Code/Older versions/v1.0/obj/Debug/IniToSQL.csproj.FileListAbsolute.txt similarity index 100% rename from Source Code/v1.0/obj/Debug/IniToSQL.csproj.FileListAbsolute.txt rename to Source Code/Older versions/v1.0/obj/Debug/IniToSQL.csproj.FileListAbsolute.txt diff --git a/Source Code/v1.0/obj/Debug/IniToSQL.csproj.GenerateResource.Cache b/Source Code/Older versions/v1.0/obj/Debug/IniToSQL.csproj.GenerateResource.Cache similarity index 100% rename from Source Code/v1.0/obj/Debug/IniToSQL.csproj.GenerateResource.Cache rename to Source Code/Older versions/v1.0/obj/Debug/IniToSQL.csproj.GenerateResource.Cache diff --git a/Source Code/v1.0/obj/Debug/IniToSQL.csprojResolveAssemblyReference.cache b/Source Code/Older versions/v1.0/obj/Debug/IniToSQL.csprojResolveAssemblyReference.cache similarity index 100% rename from Source Code/v1.0/obj/Debug/IniToSQL.csprojResolveAssemblyReference.cache rename to Source Code/Older versions/v1.0/obj/Debug/IniToSQL.csprojResolveAssemblyReference.cache diff --git a/Source Code/v1.0/obj/Debug/IniToSQL.exe b/Source Code/Older versions/v1.0/obj/Debug/IniToSQL.exe similarity index 100% rename from Source Code/v1.0/obj/Debug/IniToSQL.exe rename to Source Code/Older versions/v1.0/obj/Debug/IniToSQL.exe diff --git a/Source Code/v1.0/obj/Debug/IniToSQL.notification.resources b/Source Code/Older versions/v1.0/obj/Debug/IniToSQL.notification.resources similarity index 100% rename from Source Code/v1.0/obj/Debug/IniToSQL.notification.resources rename to Source Code/Older versions/v1.0/obj/Debug/IniToSQL.notification.resources diff --git a/Source Code/v1.0/obj/Debug/IniToSQL.pdb b/Source Code/Older versions/v1.0/obj/Debug/IniToSQL.pdb similarity index 100% rename from Source Code/v1.0/obj/Debug/IniToSQL.pdb rename to Source Code/Older versions/v1.0/obj/Debug/IniToSQL.pdb diff --git a/Source Code/v1.0/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll b/Source Code/Older versions/v1.0/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll similarity index 100% rename from Source Code/v1.0/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll rename to Source Code/Older versions/v1.0/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll diff --git a/Source Code/v1.0/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/Source Code/Older versions/v1.0/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs similarity index 100% rename from Source Code/v1.0/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs rename to Source Code/Older versions/v1.0/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs diff --git a/Source Code/v1.0/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/Source Code/Older versions/v1.0/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs similarity index 100% rename from Source Code/v1.0/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs rename to Source Code/Older versions/v1.0/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs diff --git a/Source Code/v1.0/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/Source Code/Older versions/v1.0/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs similarity index 100% rename from Source Code/v1.0/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs rename to Source Code/Older versions/v1.0/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs diff --git a/Source Code/v1.0/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache b/Source Code/Older versions/v1.0/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache similarity index 100% rename from Source Code/v1.0/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache rename to Source Code/Older versions/v1.0/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache diff --git a/Source Code/v1.0/obj/Release/IniToSQL.Form1.resources b/Source Code/Older versions/v1.0/obj/Release/IniToSQL.Form1.resources similarity index 100% rename from Source Code/v1.0/obj/Release/IniToSQL.Form1.resources rename to Source Code/Older versions/v1.0/obj/Release/IniToSQL.Form1.resources diff --git a/Source Code/v1.0/obj/Release/IniToSQL.Properties.Resources.resources b/Source Code/Older versions/v1.0/obj/Release/IniToSQL.Properties.Resources.resources similarity index 100% rename from Source Code/v1.0/obj/Release/IniToSQL.Properties.Resources.resources rename to Source Code/Older versions/v1.0/obj/Release/IniToSQL.Properties.Resources.resources diff --git a/Source Code/v1.0/obj/Release/IniToSQL.csproj.FileListAbsolute.txt b/Source Code/Older versions/v1.0/obj/Release/IniToSQL.csproj.FileListAbsolute.txt similarity index 100% rename from Source Code/v1.0/obj/Release/IniToSQL.csproj.FileListAbsolute.txt rename to Source Code/Older versions/v1.0/obj/Release/IniToSQL.csproj.FileListAbsolute.txt diff --git a/Source Code/v1.0/obj/Release/IniToSQL.csproj.GenerateResource.Cache b/Source Code/Older versions/v1.0/obj/Release/IniToSQL.csproj.GenerateResource.Cache similarity index 100% rename from Source Code/v1.0/obj/Release/IniToSQL.csproj.GenerateResource.Cache rename to Source Code/Older versions/v1.0/obj/Release/IniToSQL.csproj.GenerateResource.Cache diff --git a/Source Code/v1.0/obj/Release/IniToSQL.csprojResolveAssemblyReference.cache b/Source Code/Older versions/v1.0/obj/Release/IniToSQL.csprojResolveAssemblyReference.cache similarity index 100% rename from Source Code/v1.0/obj/Release/IniToSQL.csprojResolveAssemblyReference.cache rename to Source Code/Older versions/v1.0/obj/Release/IniToSQL.csprojResolveAssemblyReference.cache diff --git a/Source Code/v1.0/obj/Release/IniToSQL.exe b/Source Code/Older versions/v1.0/obj/Release/IniToSQL.exe similarity index 100% rename from Source Code/v1.0/obj/Release/IniToSQL.exe rename to Source Code/Older versions/v1.0/obj/Release/IniToSQL.exe diff --git a/Source Code/v1.0/obj/Release/IniToSQL.notification.resources b/Source Code/Older versions/v1.0/obj/Release/IniToSQL.notification.resources similarity index 100% rename from Source Code/v1.0/obj/Release/IniToSQL.notification.resources rename to Source Code/Older versions/v1.0/obj/Release/IniToSQL.notification.resources diff --git a/Source Code/v1.0/obj/Release/IniToSQL.pdb b/Source Code/Older versions/v1.0/obj/Release/IniToSQL.pdb similarity index 100% rename from Source Code/v1.0/obj/Release/IniToSQL.pdb rename to Source Code/Older versions/v1.0/obj/Release/IniToSQL.pdb diff --git a/Source Code/v1.0/obj/Release/TempPE/Properties.Resources.Designer.cs.dll b/Source Code/Older versions/v1.0/obj/Release/TempPE/Properties.Resources.Designer.cs.dll similarity index 100% rename from Source Code/v1.0/obj/Release/TempPE/Properties.Resources.Designer.cs.dll rename to Source Code/Older versions/v1.0/obj/Release/TempPE/Properties.Resources.Designer.cs.dll diff --git a/Source Code/v1.0/obj/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/Source Code/Older versions/v1.0/obj/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs similarity index 100% rename from Source Code/v1.0/obj/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs rename to Source Code/Older versions/v1.0/obj/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs diff --git a/Source Code/v1.0/obj/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/Source Code/Older versions/v1.0/obj/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs similarity index 100% rename from Source Code/v1.0/obj/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs rename to Source Code/Older versions/v1.0/obj/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs diff --git a/Source Code/v1.0/obj/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/Source Code/Older versions/v1.0/obj/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs similarity index 100% rename from Source Code/v1.0/obj/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs rename to Source Code/Older versions/v1.0/obj/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs diff --git a/Source Code/Older versions/v1.1/App.config b/Source Code/Older versions/v1.1/App.config new file mode 100644 index 0000000..e707b32 --- /dev/null +++ b/Source Code/Older versions/v1.1/App.config @@ -0,0 +1,6 @@ + + + + + + diff --git a/Source Code/v1.1/Form1 - Copy.Designer.cs b/Source Code/Older versions/v1.1/Form1 - Copy.Designer.cs similarity index 100% rename from Source Code/v1.1/Form1 - Copy.Designer.cs rename to Source Code/Older versions/v1.1/Form1 - Copy.Designer.cs diff --git a/Source Code/v1.1/Form1 - Copy.cs b/Source Code/Older versions/v1.1/Form1 - Copy.cs similarity index 100% rename from Source Code/v1.1/Form1 - Copy.cs rename to Source Code/Older versions/v1.1/Form1 - Copy.cs diff --git a/Source Code/v1.1/Form1 - Copy.resx b/Source Code/Older versions/v1.1/Form1 - Copy.resx similarity index 100% rename from Source Code/v1.1/Form1 - Copy.resx rename to Source Code/Older versions/v1.1/Form1 - Copy.resx diff --git a/Source Code/v1.1/Form1.Designer.cs b/Source Code/Older versions/v1.1/Form1.Designer.cs similarity index 100% rename from Source Code/v1.1/Form1.Designer.cs rename to Source Code/Older versions/v1.1/Form1.Designer.cs diff --git a/Source Code/Older versions/v1.1/Form1.cs b/Source Code/Older versions/v1.1/Form1.cs new file mode 100644 index 0000000..ca92c82 --- /dev/null +++ b/Source Code/Older versions/v1.1/Form1.cs @@ -0,0 +1,401 @@ +/* + ██╗███╗ ██╗██╗ ██╗ ███████╗ ██████╗ ██╗ + ██║████╗ ██║██║ ╚██╗ ██╔════╝██╔═══██╗██║ + ██║██╔██╗ ██║██║█████╗╚██╗███████╗██║ ██║██║ + ██║██║╚██╗██║██║╚════╝██╔╝╚════██║██║▄▄ ██║██║ + ██║██║ ╚████║██║ ██╔╝ ███████║╚██████╔╝███████╗ + ╚═╝╚═╝ ╚═══╝╚═╝ ╚═╝ ╚══════╝ ╚══▀▀═╝ ╚══════╝ + + The MIT License (MIT) + + Copyright (c) 2014 GtakillerIV + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + +*/ + + +using System; +using System.IO; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; +using System.Collections; +using System.Text.RegularExpressions; +using System.Diagnostics; +using MySql.Data.MySqlClient; + +namespace IniToSQL +{ + public partial class Form1 : Form + { + string query; + public const int MAX_INSERTS = 270; + bool containsSpaces = false; + + ArrayList columns = new ArrayList(); + int accCount; + + notification noti = new notification(); + + DirectoryInfo di; + + MySQL mysql = new MySQL(); + + public Form1() + { + InitializeComponent(); + } + + private void BTN_Browse_Click(object sender, EventArgs e) + { + DialogResult result = folderBrowserDialog1.ShowDialog(); + if(result == DialogResult.OK) + { + button1.Enabled = false; + string dir = folderBrowserDialog1.SelectedPath; + TXTBX_Directory.Text = dir; + this.Invoke(new MethodInvoker(delegate { progressBar1.Value = 0; })); + dir = folderBrowserDialog1.SelectedPath; + di = new DirectoryInfo(@dir); + accCount = Directory.GetFiles(dir, "*.ini").Length; + label5.Text = "0/" + accCount + " Files done"; + label1.Text = "Found a total of " + Directory.GetFiles(dir, "*.ini").Length.ToString() + " Account(s)"; + listBox1.Items.Clear(); + listBox3.Items.Clear(); + columns.Clear(); + int accsDone = 0; + float perc = 0.0f; + bool addedFinalItem = false; + int columnsCount = 0; + + bool checkedSpaces = false, studiedAcc = false; + + foreach (var fi in di.GetFiles("*.ini")) + { + if (studiedAcc == false) + { + var lines = File.ReadLines(fi.FullName); + + foreach (var line in lines) + { + if (Regex.Match(line, @"^[A-Za-z0-9]").Success) + { + var field = line.Split('='); + + columnsCount++; + field[0] = field[0].Replace(" ", string.Empty); + listBox3.Items.Add(field[0]); + columns.Add(field[0]); + + + if (checkedSpaces == false) + { + if (line[line.IndexOf("=") + 1] == ' ') containsSpaces = true; + checkedSpaces = true; + } + } + + } + studiedAcc = true; + } + perc = (float)accsDone/(float)accCount * 100; + this.Invoke(new MethodInvoker(delegate { progressBar1.Value = (int)Math.Ceiling(perc); })); + + if (listBox1.Items.Count < 21) + { + listBox1.Items.Add(fi.Name); + } + else if(!addedFinalItem) + { + listBox1.Items.Add("+" + (accCount-20) + " more"); + addedFinalItem = true; + } + accsDone++; + } + label2.Text = columnsCount + " columns Found"; + button1.Enabled = true; + textBox1.Enabled = true; + checkBox1.Enabled = true; + checkBox2.Enabled = true; + checkBox3.Enabled = true; + } + } + + private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e) + { + GenerateQuery(columns); + } + + private void GenerateQuery(ArrayList columns) + { + Stopwatch stopWatch = new Stopwatch(); + stopWatch.Start(); + int count = 0; + bool containsUsername = true, addedUsername = false, dontWrite = false; + this.Invoke(new MethodInvoker(delegate + { + progressBar1.Value = 0; + listBox2.Items.Clear(); + + if (!checkBox1.Checked && textBox2.Text != "Username field name") + { + containsUsername = false; + checkBox1.Enabled = false; + columns.Insert(0, textBox2.Text); + } + + if (checkBox3.Checked) + { + query = "INSERT IGNORE INTO `" + textBox1.Text + "` ("; + } + else + { + query = "INSERT INTO `" + textBox1.Text + "` ("; + } + })); + + for (int i = 0; i < columns.Count; i++) + { + query += "`" + columns[i] + "`" + ","; + } + + query = query.Remove(query.Length - 1); + + query += ") VALUES "; + + string Finalquery = query + "("; + + StreamWriter file = new StreamWriter("Query.sql"); + + file.Write("/*\t\t*********************************************\r\n"); + file.Write("\t\t* *\r\n"); + file.Write("\t\t* Generated by Ini->Sql *\r\n"); + file.Write("\t\t* Created by GtakillerIV *\r\n"); + file.Write("\t\t* *\r\n"); + file.Write("\t\t**********************************************\r\n*/\r\n"); + + int dataLine = 0; + ArrayList data = new ArrayList(); + string Line = null; + float perc = 0.0f; + + int accsDone = 0; + int s; + foreach (var fi in di.GetFiles("*.ini")) + { + if (backgroundWorker1.CancellationPending) break; + if (fi.Length == 0)// Is the .ini file empty? + { + this.Invoke(new MethodInvoker(delegate { listBox2.Items.Add("Skipping" + fi.Name + " due to it being empty."); })); + count++; + accsDone++; + continue; + } + //Console.WriteLine("File: " + fi.Name); + var lines = File.ReadLines(fi.FullName); + + foreach (var line in lines) + { + if (Regex.Match(line, @"^[\w]").Success) + { + if (containsSpaces) + { + Line = line.Remove(0, line.IndexOf("=") + 2); + } + else + { + Line = line.Remove(0, line.IndexOf("=") + 1); + } + Line = Regex.Escape(Line); + data.Add(Line); + dataLine++; + } + } + if (count < MAX_INSERTS) + { + string Format = ""; + if (checkBox2.Checked) + { + if (!containsUsername && columns.Count > dataLine+1) + { + this.Invoke(new MethodInvoker(delegate { listBox2.Items.Add("Skipping " + fi.Name + " due to invalid column count"); })); + count++; + accsDone++; + dontWrite = true; + continue;//Let's get out of here! + } + else if(containsUsername && columns.Count > dataLine) + { + this.Invoke(new MethodInvoker(delegate { listBox2.Items.Add("Skipping " + fi.Name + " due to invalid column count"); })); + count++; + accsDone++; + dontWrite = true; + continue; + } + + } + for (int i = 0; i < dataLine; i++) + { + data[i] = data[i].ToString().Replace("\u0001", "");//Get rid of SOH + + if(!int.TryParse(data[i].ToString(), out s )) + { + if (!containsUsername && !addedUsername) + { + Format = string.Format("\"{0}\"", Path.GetFileNameWithoutExtension(fi.Name)); + Finalquery += Format + ","; + addedUsername = true; + } + Format = string.Format("\"{0}\"", data[i]); + } + else + { + Format = string.Format("{0}", data[i]); + } + Finalquery += Format + ","; + } + + Finalquery = Finalquery.Remove(Finalquery.Length - 1); + if (count >= MAX_INSERTS-1 || accCount-accsDone <= 1) + { + Finalquery += ");"; + } + else + { + Finalquery += "),"; + } + count++; + } + else + { + count = 0; + Finalquery = query; + } + if (!dontWrite) + { + file.WriteLine(Finalquery); + } + dataLine = 0; + Finalquery = "("; + data.Clear(); + accsDone++; + dontWrite = false; + addedUsername = false; + perc = (float)accsDone / (float)accCount * 100; + this.Invoke(new MethodInvoker(delegate + { + label5.Text = accsDone + "/" + accCount + " Files done"; + progressBar1.Value = (int)Math.Ceiling(perc); + + })); + + } + + file.Close(); + + stopWatch.Stop(); + + this.Invoke(new MethodInvoker(delegate + { + + + int width = Screen.PrimaryScreen.WorkingArea.Right; + int height = Screen.PrimaryScreen.WorkingArea.Height; + + if (backgroundWorker1.CancellationPending) noti.label2.Text = "Conversion of accounts was interrupted!"; + else noti.label2.Text = "Conversion of accounts has finished successfully!"; + + if (!noti.Visible) + { + noti.Location = new Point(width - noti.Size.Width, height - noti.Size.Height); + noti.Show(); + } + + button1.Enabled = true; + button2.Enabled = false; + textBox1.Enabled = true; + checkBox1.Enabled = true; + progressBar1.Value = 0; + label6.Text = "Finished in " + stopWatch.ElapsedMilliseconds + " ms"; + + })); + + } + + private void button1_Click(object sender, EventArgs e) + { + + if (textBox1.Text == "Table name") + { + MessageBox.Show(null, "Enter in a table name!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error ); + } + else + { + button1.Enabled = false; + button2.Enabled = true; + textBox1.Enabled = false; + + backgroundWorker1.RunWorkerAsync(); + + } + } + + private void backgroundWorker1_ProgressChanged(object sender, ProgressChangedEventArgs e) + { + + } + + private void button2_Click(object sender, EventArgs e) + { + backgroundWorker1.CancelAsync(); + } + + private void Form1_Load(object sender, EventArgs e) + { + + } + + private void progressBar1_Click(object sender, EventArgs e) + { + + } + + private void checkBox3_CheckedChanged(object sender, EventArgs e) + { + + } + + private void Logo_Click(object sender, EventArgs e) + { + + } + + private void checkBox1_CheckedChanged(object sender, EventArgs e) + { + if (checkBox1.Checked) textBox2.Enabled = false; + else textBox2.Enabled = true; + } + } +} diff --git a/Source Code/v1.1/Form1.resx b/Source Code/Older versions/v1.1/Form1.resx similarity index 100% rename from Source Code/v1.1/Form1.resx rename to Source Code/Older versions/v1.1/Form1.resx diff --git a/Source Code/v1.1/IniToSQL.csproj b/Source Code/Older versions/v1.1/IniToSQL.csproj similarity index 100% rename from Source Code/v1.1/IniToSQL.csproj rename to Source Code/Older versions/v1.1/IniToSQL.csproj diff --git a/Source Code/Older versions/v1.1/IniToSQL.csproj.user b/Source Code/Older versions/v1.1/IniToSQL.csproj.user new file mode 100644 index 0000000..4a9dac5 --- /dev/null +++ b/Source Code/Older versions/v1.1/IniToSQL.csproj.user @@ -0,0 +1,13 @@ + + + + publish\ + + + + + + en-US + false + + \ No newline at end of file diff --git a/Source Code/Older versions/v1.1/IniToSQL.sln b/Source Code/Older versions/v1.1/IniToSQL.sln new file mode 100644 index 0000000..3d36e47 --- /dev/null +++ b/Source Code/Older versions/v1.1/IniToSQL.sln @@ -0,0 +1,20 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2012 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IniToSQL", "IniToSQL.csproj", "{9EFA2AAB-324E-4946-AAA6-92D7F6DC3FB6}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {9EFA2AAB-324E-4946-AAA6-92D7F6DC3FB6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {9EFA2AAB-324E-4946-AAA6-92D7F6DC3FB6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {9EFA2AAB-324E-4946-AAA6-92D7F6DC3FB6}.Release|Any CPU.ActiveCfg = Release|Any CPU + {9EFA2AAB-324E-4946-AAA6-92D7F6DC3FB6}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Source Code/Older versions/v1.1/IniToSQL.v11.suo b/Source Code/Older versions/v1.1/IniToSQL.v11.suo new file mode 100644 index 0000000000000000000000000000000000000000..40948963afb6ede5a325fe63649a2d05353dd90b GIT binary patch literal 19968 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 YiU#o~c7RQI5Pvd=Kk;5!TRr~df0bU}k^lez literal 0 HcmV?d00001 diff --git a/Source Code/v1.1/IniToSQL.v12.suo b/Source Code/Older versions/v1.1/IniToSQL.v12.suo similarity index 100% rename from Source Code/v1.1/IniToSQL.v12.suo rename to Source Code/Older versions/v1.1/IniToSQL.v12.suo diff --git a/Source Code/Older versions/v1.1/MySQL.cs b/Source Code/Older versions/v1.1/MySQL.cs new file mode 100644 index 0000000..58de018 --- /dev/null +++ b/Source Code/Older versions/v1.1/MySQL.cs @@ -0,0 +1,56 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using MySql.Data.MySqlClient; +using System.Windows.Forms; +namespace IniToSQL +{ + + class MySQL + { + private MySqlConnection con; + private string connectStr; + + public void Init(string server, string username, string password, string dbname) + { + connectStr = string.Format("SERVER={0}; DATABASE={1}; UID={2}; PASSWORD={3}", server, username, password, dbname); + + con = new MySqlConnection(connectStr); + } + + public int Connect() + { + try + { + con.Open(); + } + catch(MySqlException ex) + { + switch(ex.Number) + { + case 0: + return 1; + case 1: + return 2; + } + } + return 0; + } + + public bool Disconnect() + { + try + { + con.Close(); + return true; + } + catch(MySqlException ex) + { + MessageBox.Show(ex.Message); + return false; + } + } + } +} diff --git a/Source Code/v1.1/Program.cs b/Source Code/Older versions/v1.1/Program.cs similarity index 100% rename from Source Code/v1.1/Program.cs rename to Source Code/Older versions/v1.1/Program.cs diff --git a/Source Code/v1.1/Properties/AssemblyInfo.cs b/Source Code/Older versions/v1.1/Properties/AssemblyInfo.cs similarity index 100% rename from Source Code/v1.1/Properties/AssemblyInfo.cs rename to Source Code/Older versions/v1.1/Properties/AssemblyInfo.cs diff --git a/Source Code/v1.1/Properties/Resources.Designer.cs b/Source Code/Older versions/v1.1/Properties/Resources.Designer.cs similarity index 100% rename from Source Code/v1.1/Properties/Resources.Designer.cs rename to Source Code/Older versions/v1.1/Properties/Resources.Designer.cs diff --git a/Source Code/v1.1/Properties/Resources.resx b/Source Code/Older versions/v1.1/Properties/Resources.resx similarity index 100% rename from Source Code/v1.1/Properties/Resources.resx rename to Source Code/Older versions/v1.1/Properties/Resources.resx diff --git a/Source Code/v1.1/Properties/Settings.Designer.cs b/Source Code/Older versions/v1.1/Properties/Settings.Designer.cs similarity index 100% rename from Source Code/v1.1/Properties/Settings.Designer.cs rename to Source Code/Older versions/v1.1/Properties/Settings.Designer.cs diff --git a/Source Code/v1.1/Properties/Settings.settings b/Source Code/Older versions/v1.1/Properties/Settings.settings similarity index 100% rename from Source Code/v1.1/Properties/Settings.settings rename to Source Code/Older versions/v1.1/Properties/Settings.settings diff --git a/Source Code/v1.1/Resources/ini2sql.png b/Source Code/Older versions/v1.1/Resources/ini2sql.png similarity index 100% rename from Source Code/v1.1/Resources/ini2sql.png rename to Source Code/Older versions/v1.1/Resources/ini2sql.png diff --git a/Source Code/v1.1/ini2sql_ico.ico b/Source Code/Older versions/v1.1/ini2sql_ico.ico similarity index 100% rename from Source Code/v1.1/ini2sql_ico.ico rename to Source Code/Older versions/v1.1/ini2sql_ico.ico diff --git a/Source Code/v1.1/notification.Designer.cs b/Source Code/Older versions/v1.1/notification.Designer.cs similarity index 100% rename from Source Code/v1.1/notification.Designer.cs rename to Source Code/Older versions/v1.1/notification.Designer.cs diff --git a/Source Code/v1.1/notification.cs b/Source Code/Older versions/v1.1/notification.cs similarity index 100% rename from Source Code/v1.1/notification.cs rename to Source Code/Older versions/v1.1/notification.cs diff --git a/Source Code/v1.1/notification.resx b/Source Code/Older versions/v1.1/notification.resx similarity index 100% rename from Source Code/v1.1/notification.resx rename to Source Code/Older versions/v1.1/notification.resx diff --git a/Source Code/Program.cs b/Source Code/Program.cs new file mode 100644 index 0000000..134e296 --- /dev/null +++ b/Source Code/Program.cs @@ -0,0 +1,55 @@ +/* + ██╗███╗ ██╗██╗ ██╗ ███████╗ ██████╗ ██╗ + ██║████╗ ██║██║ ╚██╗ ██╔════╝██╔═══██╗██║ + ██║██╔██╗ ██║██║█████╗╚██╗███████╗██║ ██║██║ + ██║██║╚██╗██║██║╚════╝██╔╝╚════██║██║▄▄ ██║██║ + ██║██║ ╚████║██║ ██╔╝ ███████║╚██████╔╝███████╗ + ╚═╝╚═╝ ╚═══╝╚═╝ ╚═╝ ╚══════╝ ╚══▀▀═╝ ╚══════╝ + + The MIT License (MIT) + + Copyright (c) 2014 GtakillerIV + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + +*/ + + +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace IniToSQL +{ + static class Program + { + /// + /// The main entry point for the application. + /// + [STAThread] + static void Main() + { + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + Application.Run(new Form1()); + } + } +} diff --git a/Source Code/Properties/AssemblyInfo.cs b/Source Code/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..4704c7a --- /dev/null +++ b/Source Code/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("IniToSQL")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("IniToSQL")] +[assembly: AssemblyCopyright("Copyright © 2014")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("3df7a2c3-4413-4186-8d70-45dbfbe8be4c")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Source Code/Properties/Resources.Designer.cs b/Source Code/Properties/Resources.Designer.cs new file mode 100644 index 0000000..de50edd --- /dev/null +++ b/Source Code/Properties/Resources.Designer.cs @@ -0,0 +1,73 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.18449 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace IniToSQL.Properties { + using System; + + + /// + /// A strongly-typed resource class, for looking up localized strings, etc. + /// + // This class was auto-generated by the StronglyTypedResourceBuilder + // class via a tool like ResGen or Visual Studio. + // To add or remove a member, edit your .ResX file then rerun ResGen + // with the /str option, or rebuild your VS project. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class Resources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal Resources() { + } + + /// + /// Returns the cached ResourceManager instance used by this class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager { + get { + if (object.ReferenceEquals(resourceMan, null)) { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("IniToSQL.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Overrides the current thread's CurrentUICulture property for all + /// resource lookups using this strongly typed resource class. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap ini2sql { + get { + object obj = ResourceManager.GetObject("ini2sql", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + } +} diff --git a/Source Code/Properties/Resources.resx b/Source Code/Properties/Resources.resx new file mode 100644 index 0000000..6a979fa --- /dev/null +++ b/Source Code/Properties/Resources.resx @@ -0,0 +1,124 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + ..\Resources\ini2sql.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + \ No newline at end of file diff --git a/Source Code/Properties/Settings.Designer.cs b/Source Code/Properties/Settings.Designer.cs new file mode 100644 index 0000000..b063156 --- /dev/null +++ b/Source Code/Properties/Settings.Designer.cs @@ -0,0 +1,26 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.18449 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace IniToSQL.Properties { + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "12.0.0.0")] + internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase { + + private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings()))); + + public static Settings Default { + get { + return defaultInstance; + } + } + } +} diff --git a/Source Code/Properties/Settings.settings b/Source Code/Properties/Settings.settings new file mode 100644 index 0000000..3964565 --- /dev/null +++ b/Source Code/Properties/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/Source Code/Properties/app.manifest b/Source Code/Properties/app.manifest new file mode 100644 index 0000000..7e8ad37 --- /dev/null +++ b/Source Code/Properties/app.manifest @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Source Code/Resources/ini2sql.png b/Source Code/Resources/ini2sql.png new file mode 100644 index 0000000000000000000000000000000000000000..3142aa440e456d8f5d56437c4dd3edf917643539 GIT binary patch literal 4155 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 literal 0 HcmV?d00001 diff --git a/Source Code/notification.Designer.cs b/Source Code/notification.Designer.cs new file mode 100644 index 0000000..c513650 --- /dev/null +++ b/Source Code/notification.Designer.cs @@ -0,0 +1,166 @@ +/* + ██╗███╗ ██╗██╗ ██╗ ███████╗ ██████╗ ██╗ + ██║████╗ ██║██║ ╚██╗ ██╔════╝██╔═══██╗██║ + ██║██╔██╗ ██║██║█████╗╚██╗███████╗██║ ██║██║ + ██║██║╚██╗██║██║╚════╝██╔╝╚════██║██║▄▄ ██║██║ + ██║██║ ╚████║██║ ██╔╝ ███████║╚██████╔╝███████╗ + ╚═╝╚═╝ ╚═══╝╚═╝ ╚═╝ ╚══════╝ ╚══▀▀═╝ ╚══════╝ + + The MIT License (MIT) + + Copyright (c) 2014 GtakillerIV + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + +*/ + + +namespace IniToSQL +{ + partial class notification + { + /// + /// Required designer variable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Clean up any resources being used. + /// + /// true if managed resources should be disposed; otherwise, false. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Windows Form Designer generated code + + /// + /// Required method for Designer support - do not modify + /// the contents of this method with the code editor. + /// + private void InitializeComponent() + { + this.menuStrip1 = new System.Windows.Forms.MenuStrip(); + this.label1 = new System.Windows.Forms.Label(); + this.button1 = new System.Windows.Forms.Button(); + this.label2 = new System.Windows.Forms.Label(); + this.button2 = new System.Windows.Forms.Button(); + this.SuspendLayout(); + // + // menuStrip1 + // + this.menuStrip1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(16)))), ((int)(((byte)(16)))), ((int)(((byte)(16))))); + this.menuStrip1.Location = new System.Drawing.Point(0, 0); + this.menuStrip1.Name = "menuStrip1"; + this.menuStrip1.Size = new System.Drawing.Size(308, 24); + this.menuStrip1.TabIndex = 0; + this.menuStrip1.Text = "menuStrip1"; + // + // label1 + // + this.label1.AutoSize = true; + this.label1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(16)))), ((int)(((byte)(16)))), ((int)(((byte)(16))))); + this.label1.ForeColor = System.Drawing.SystemColors.ButtonHighlight; + this.label1.Location = new System.Drawing.Point(122, 5); + this.label1.Name = "label1"; + this.label1.Size = new System.Drawing.Size(93, 13); + this.label1.TabIndex = 1; + this.label1.Text = "Conversion Status"; + // + // button1 + // + this.button1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(16)))), ((int)(((byte)(16)))), ((int)(((byte)(16))))); + this.button1.FlatAppearance.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(16)))), ((int)(((byte)(16)))), ((int)(((byte)(16))))); + this.button1.FlatAppearance.BorderSize = 0; + this.button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.button1.ForeColor = System.Drawing.SystemColors.MenuHighlight; + this.button1.Location = new System.Drawing.Point(273, 0); + this.button1.Name = "button1"; + this.button1.Size = new System.Drawing.Size(34, 23); + this.button1.TabIndex = 2; + this.button1.Text = "X"; + this.button1.UseVisualStyleBackColor = false; + this.button1.Click += new System.EventHandler(this.button1_Click); + // + // label2 + // + this.label2.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left) + | System.Windows.Forms.AnchorStyles.Right))); + this.label2.AutoSize = true; + this.label2.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); + this.label2.Location = new System.Drawing.Point(4, 37); + this.label2.Name = "label2"; + this.label2.RightToLeft = System.Windows.Forms.RightToLeft.No; + this.label2.Size = new System.Drawing.Size(300, 16); + this.label2.TabIndex = 3; + this.label2.Text = "Conversion of accounts has finished successfully!"; + this.label2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter; + // + // button2 + // + this.button2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(16)))), ((int)(((byte)(16)))), ((int)(((byte)(16))))); + this.button2.BackgroundImage = global::IniToSQL.Properties.Resources.ini2sql; + this.button2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch; + this.button2.FlatAppearance.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(16)))), ((int)(((byte)(16)))), ((int)(((byte)(16))))); + this.button2.FlatAppearance.BorderSize = 0; + this.button2.FlatStyle = System.Windows.Forms.FlatStyle.Flat; + this.button2.Location = new System.Drawing.Point(0, -2); + this.button2.Name = "button2"; + this.button2.Size = new System.Drawing.Size(70, 26); + this.button2.TabIndex = 4; + this.button2.UseVisualStyleBackColor = false; + // + // notification + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.ClientSize = new System.Drawing.Size(308, 63); + this.ControlBox = false; + this.Controls.Add(this.button2); + this.Controls.Add(this.label2); + this.Controls.Add(this.button1); + this.Controls.Add(this.label1); + this.Controls.Add(this.menuStrip1); + this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; + this.MainMenuStrip = this.menuStrip1; + this.Name = "notification"; + this.ShowIcon = false; + this.ShowInTaskbar = false; + this.StartPosition = System.Windows.Forms.FormStartPosition.Manual; + this.Text = "notification"; + this.TopMost = true; + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.MenuStrip menuStrip1; + private System.Windows.Forms.Label label1; + private System.Windows.Forms.Button button1; + public System.Windows.Forms.Label label2; + private System.Windows.Forms.Button button2; + } +} \ No newline at end of file diff --git a/Source Code/notification.cs b/Source Code/notification.cs new file mode 100644 index 0000000..7b849c5 --- /dev/null +++ b/Source Code/notification.cs @@ -0,0 +1,57 @@ +/* + ██╗███╗ ██╗██╗ ██╗ ███████╗ ██████╗ ██╗ + ██║████╗ ██║██║ ╚██╗ ██╔════╝██╔═══██╗██║ + ██║██╔██╗ ██║██║█████╗╚██╗███████╗██║ ██║██║ + ██║██║╚██╗██║██║╚════╝██╔╝╚════██║██║▄▄ ██║██║ + ██║██║ ╚████║██║ ██╔╝ ███████║╚██████╔╝███████╗ + ╚═╝╚═╝ ╚═══╝╚═╝ ╚═╝ ╚══════╝ ╚══▀▀═╝ ╚══════╝ + + The MIT License (MIT) + + Copyright (c) 2014 GtakillerIV + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + +*/ + +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace IniToSQL +{ + public partial class notification : Form + { + public notification() + { + InitializeComponent(); + } + + private void button1_Click(object sender, EventArgs e) + { + this.Close(); + } + } +} diff --git a/Source Code/notification.resx b/Source Code/notification.resx new file mode 100644 index 0000000..d5494e3 --- /dev/null +++ b/Source Code/notification.resx @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + \ No newline at end of file