From 1f9b923501910cbf13d0c82594ce23e1a6e5cad9 Mon Sep 17 00:00:00 2001 From: adik Date: Mon, 12 May 2025 11:59:28 +0400 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D1=8C=D1=82?= =?UTF-8?q?=D0=B5=20=D1=84=D0=B0=D0=B9=D0=BB=D1=8B=20=D0=BF=D1=80=D0=BE?= =?UTF-8?q?=D0=B5=D0=BA=D1=82=D0=B0.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- App.config | 18 ++ Form1.Designer.cs | 147 +++++++++ Form1.cs | 120 ++++++++ Form1.resx | 509 +++++++++++++++++++++++++++++++ Program.cs | 54 ++++ Properties/AssemblyInfo.cs | 36 +++ Properties/Resources.Designer.cs | 71 +++++ Properties/Resources.resx | 117 +++++++ Properties/Settings.Designer.cs | 30 ++ Properties/Settings.settings | 7 + auto-repair-shop.csproj | 136 +++++++++ auto-repair-shop.sln | 25 ++ icon.ico | Bin 0 -> 23037 bytes packages.config | 19 ++ 14 files changed, 1289 insertions(+) create mode 100644 App.config create mode 100644 Form1.Designer.cs create mode 100644 Form1.cs create mode 100644 Form1.resx create mode 100644 Program.cs create mode 100644 Properties/AssemblyInfo.cs create mode 100644 Properties/Resources.Designer.cs create mode 100644 Properties/Resources.resx create mode 100644 Properties/Settings.Designer.cs create mode 100644 Properties/Settings.settings create mode 100644 auto-repair-shop.csproj create mode 100644 auto-repair-shop.sln create mode 100644 icon.ico create mode 100644 packages.config diff --git a/App.config b/App.config new file mode 100644 index 0000000..abb8196 --- /dev/null +++ b/App.config @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Form1.Designer.cs b/Form1.Designer.cs new file mode 100644 index 0000000..308edae --- /dev/null +++ b/Form1.Designer.cs @@ -0,0 +1,147 @@ +namespace auto_repair_shop +{ + partial class Form1 + { + /// + /// Обязательная переменная конструктора. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Освободить все используемые ресурсы. + /// + /// истинно, если управляемый ресурс должен быть удален; иначе ложно. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Код, автоматически созданный конструктором форм Windows + + /// + /// Требуемый метод для поддержки конструктора — не изменяйте + /// содержимое этого метода с помощью редактора кода. + /// + private void InitializeComponent() + { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form1)); + this.button1 = new System.Windows.Forms.Button(); + this.button2 = new System.Windows.Forms.Button(); + this.button3 = new System.Windows.Forms.Button(); + this.dataGridView1 = new System.Windows.Forms.DataGridView(); + this.textBox1 = new System.Windows.Forms.TextBox(); + this.textBox2 = new System.Windows.Forms.TextBox(); + this.textBox3 = new System.Windows.Forms.TextBox(); + this.textBox4 = new System.Windows.Forms.TextBox(); + ((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).BeginInit(); + this.SuspendLayout(); + // + // button1 + // + this.button1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(220)))), ((int)(((byte)(238)))), ((int)(((byte)(255))))); + this.button1.Location = new System.Drawing.Point(679, 276); + this.button1.Name = "button1"; + this.button1.Size = new System.Drawing.Size(109, 23); + this.button1.TabIndex = 0; + this.button1.Text = "Добавления"; + this.button1.UseVisualStyleBackColor = false; + this.button1.Click += new System.EventHandler(this.button1_Click); + // + // button2 + // + this.button2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(220)))), ((int)(((byte)(238)))), ((int)(((byte)(255))))); + this.button2.Location = new System.Drawing.Point(679, 316); + this.button2.Name = "button2"; + this.button2.Size = new System.Drawing.Size(109, 23); + this.button2.TabIndex = 1; + this.button2.Text = "Удаление"; + this.button2.UseVisualStyleBackColor = false; + this.button2.Click += new System.EventHandler(this.button2_Click); + // + // button3 + // + this.button3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(220)))), ((int)(((byte)(238)))), ((int)(((byte)(255))))); + this.button3.Location = new System.Drawing.Point(679, 355); + this.button3.Name = "button3"; + this.button3.Size = new System.Drawing.Size(109, 23); + this.button3.TabIndex = 2; + this.button3.Text = "Редактирвоание"; + this.button3.UseVisualStyleBackColor = false; + this.button3.Click += new System.EventHandler(this.button3_Click_1); + // + // dataGridView1 + // + this.dataGridView1.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.dataGridView1.Location = new System.Drawing.Point(0, 0); + this.dataGridView1.Name = "dataGridView1"; + this.dataGridView1.Size = new System.Drawing.Size(611, 438); + this.dataGridView1.TabIndex = 3; + // + // textBox1 + // + this.textBox1.Location = new System.Drawing.Point(688, 12); + this.textBox1.Name = "textBox1"; + this.textBox1.Size = new System.Drawing.Size(100, 20); + this.textBox1.TabIndex = 4; + // + // textBox2 + // + this.textBox2.Location = new System.Drawing.Point(688, 54); + this.textBox2.Name = "textBox2"; + this.textBox2.Size = new System.Drawing.Size(100, 20); + this.textBox2.TabIndex = 5; + // + // textBox3 + // + this.textBox3.Location = new System.Drawing.Point(688, 101); + this.textBox3.Name = "textBox3"; + this.textBox3.Size = new System.Drawing.Size(100, 20); + this.textBox3.TabIndex = 6; + // + // textBox4 + // + this.textBox4.Location = new System.Drawing.Point(688, 146); + this.textBox4.Name = "textBox4"; + this.textBox4.Size = new System.Drawing.Size(100, 20); + this.textBox4.TabIndex = 7; + // + // Form1 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(59)))), ((int)(((byte)(130)))), ((int)(((byte)(246))))); + this.ClientSize = new System.Drawing.Size(800, 450); + this.Controls.Add(this.textBox4); + this.Controls.Add(this.textBox3); + this.Controls.Add(this.textBox2); + this.Controls.Add(this.textBox1); + this.Controls.Add(this.dataGridView1); + this.Controls.Add(this.button3); + this.Controls.Add(this.button2); + this.Controls.Add(this.button1); + this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.Name = "Form1"; + this.Text = "Form1"; + ((System.ComponentModel.ISupportInitialize)(this.dataGridView1)).EndInit(); + this.ResumeLayout(false); + this.PerformLayout(); + + } + + #endregion + + private System.Windows.Forms.Button button1; + private System.Windows.Forms.Button button2; + private System.Windows.Forms.Button button3; + private System.Windows.Forms.DataGridView dataGridView1; + private System.Windows.Forms.TextBox textBox1; + private System.Windows.Forms.TextBox textBox2; + private System.Windows.Forms.TextBox textBox3; + private System.Windows.Forms.TextBox textBox4; + } +} + diff --git a/Form1.cs b/Form1.cs new file mode 100644 index 0000000..3157f54 --- /dev/null +++ b/Form1.cs @@ -0,0 +1,120 @@ +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; +using static System.Windows.Forms.VisualStyles.VisualStyleElement; + +namespace auto_repair_shop +{ + public partial class Form1 : Form + { + + public DataTable data = new DataTable(); + + public Form1() + { + InitializeComponent(); + DataTable dataTable = Dbs.select("SELECT idbid, client, service, price, deadlines FROM bid "); + data = dataTable; + dataGridView1.DataSource = data; + } + + + private void button1_Click(object sender, EventArgs e) + { + + { + if (textBox1.Text == "" || textBox2.Text == "" || textBox3.Text == "" || textBox4.Text == "") + { + MessageBox.Show("Заполните все поля!"); + } + else + { + data = Dbs.select($"INSERT INTO bid (`client`,`service`,`price`, `deadlines` ) VALUES ('{textBox1.Text}','{textBox2.Text}','{textBox3.Text}','{textBox4.Text}');"); + data = Dbs.select(@"SELECT idBid,client,service,price, deadlines FROM bid "); + textBox1.Clear(); + textBox2.Clear(); + textBox3.Clear(); + textBox4.Clear(); + + dataGridView1.DataSource = data; + } + } + + + } + + private void button2_Click(object sender, EventArgs e) + { + DialogResult result = MessageBox.Show("удалить безвазвратно?", "Подтвердите действие", MessageBoxButtons.YesNo, MessageBoxIcon.Question); + + if (result == DialogResult.Yes) + { + data = Dbs.select($"DELETE FROM bid WHERE idBid = " + dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[0].Value.ToString()); + data = Dbs.select($"SELECT idBid, client, service,price, deadlines FROM bid "); + MessageBox.Show("Удаление завершено!", "TsManager"); + } + else if (result == DialogResult.No) + { + dataGridView1.DataSource = data; + } + + dataGridView1.DataSource = data; + } + + + + private void button3_Click_1(object sender, EventArgs e) + { + + int selectedRowIndex = dataGridView1.CurrentCell.RowIndex; + + if (selectedRowIndex < 0) + { + MessageBox.Show("Пожалуйста, выберите строку для редактирования."); + return; + } + + + int id = Convert.ToInt32(dataGridView1.Rows[selectedRowIndex].Cells[0].Value); + + + if (string.IsNullOrWhiteSpace(textBox1.Text) || string.IsNullOrWhiteSpace(textBox2.Text) || string.IsNullOrWhiteSpace(textBox3.Text) || string.IsNullOrWhiteSpace(textBox4.Text)) + { + MessageBox.Show("Заполните все поля!"); + return; + } + DialogResult result = MessageBox.Show("уверены что хотите редактировать?", "Подтвердите действие", MessageBoxButtons.YesNo, MessageBoxIcon.Question); + + if (result == DialogResult.Yes) + { + string updateQuery = $"UPDATE bid SET client = '{textBox1.Text}', service = '{textBox2.Text}', price= '{textBox3.Text}', deadlines= '{textBox4.Text}' WHERE idBid = {id};"; + Dbs.select(updateQuery); + + + data = Dbs.select("SELECT idBid, client, service, price, deadlines FROM bid "); + dataGridView1.DataSource = data; + + + textBox1.Clear(); + textBox2.Clear(); + textBox3.Clear(); + textBox4.Clear(); + MessageBox.Show("редактирование завершено!", "TsManager"); + } + else if (result == DialogResult.No) + { + dataGridView1.DataSource = data; + } + + + + } + } + +} diff --git a/Form1.resx b/Form1.resx new file mode 100644 index 0000000..662dbb4 --- /dev/null +++ b/Form1.resx @@ -0,0 +1,509 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 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 + + + + + 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 + + + \ No newline at end of file diff --git a/Program.cs b/Program.cs new file mode 100644 index 0000000..ca2e0a6 --- /dev/null +++ b/Program.cs @@ -0,0 +1,54 @@ +using auto_repair_shop; +using MySql.Data.MySqlClient; +using System; +using System.Collections.Generic; +using System.Data; +using System.Linq; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace stratulat_modul +{ + internal static class Program + { + /// + /// Главная точка входа для приложения. + /// + [STAThread] + static void Main() + { + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + Application.Run(new Form1()); + } + } +} + + +class Dbs +{ + public static DataTable select(string sql) + { + MySqlConnectionStringBuilder builder = new MySqlConnectionStringBuilder(); + builder.Server = "80.90.179.235"; + builder.Port = 3306; + builder.Database = "pozorisp_mihailov"; + builder.UserID = "pozorisp"; + builder.Password = "pozorisp"; + MySqlConnection connect = new MySqlConnection(builder.ConnectionString); + try + { + connect.Open(); + MySqlCommand command = new MySqlCommand(sql, connect); + MySqlDataReader reader = command.ExecuteReader(); + DataTable table = new DataTable(); + table.Load(reader); + return table; + } + catch (Exception e) + { + MessageBox.Show($"При запросе произошла ошибка! Код: {e.Message}"); + return null; + } + } +} diff --git a/Properties/AssemblyInfo.cs b/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..74e6dd1 --- /dev/null +++ b/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// Общие сведения об этой сборке предоставляются следующим набором +// набора атрибутов. Измените значения этих атрибутов для изменения сведений, +// связанных со сборкой. +[assembly: AssemblyTitle("auto-repair-shop")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("auto-repair-shop")] +[assembly: AssemblyCopyright("Copyright © 2025")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Установка значения False для параметра ComVisible делает типы в этой сборке невидимыми +// для компонентов COM. Если необходимо обратиться к типу в этой сборке через +// COM, следует установить атрибут ComVisible в TRUE для этого типа. +[assembly: ComVisible(false)] + +// Следующий GUID служит для идентификации библиотеки типов, если этот проект будет видимым для COM +[assembly: Guid("5f8233c6-ad56-437f-80b9-9a0f64743f0d")] + +// Сведения о версии сборки состоят из указанных ниже четырех значений: +// +// Основной номер версии +// Дополнительный номер версии +// Номер сборки +// Редакция +// +// Можно задать все значения или принять номера сборки и редакции по умолчанию +// используя "*", как показано ниже: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Properties/Resources.Designer.cs b/Properties/Resources.Designer.cs new file mode 100644 index 0000000..89a5021 --- /dev/null +++ b/Properties/Resources.Designer.cs @@ -0,0 +1,71 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программным средством. +// Версия среды выполнения: 4.0.30319.42000 +// +// Изменения в этом файле могут привести к неправильному поведению и будут утрачены, если +// код создан повторно. +// +//------------------------------------------------------------------------------ + +namespace auto_repair_shop.Properties +{ + + + /// + /// Класс ресурсов со строгим типом для поиска локализованных строк и пр. + /// + // Этот класс был автоматически создан при помощи StronglyTypedResourceBuilder + // класс с помощью таких средств, как ResGen или Visual Studio. + // Для добавления или удаления члена измените файл .ResX, а затем перезапустите ResGen + // с параметром /str или заново постройте свой VS-проект. + [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() + { + } + + /// + /// Возврат кэшированного экземпляра ResourceManager, используемого этим классом. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Resources.ResourceManager ResourceManager + { + get + { + if ((resourceMan == null)) + { + global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("auto_repair_shop.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Переопределяет свойство CurrentUICulture текущего потока для всех + /// подстановки ресурсов с помощью этого класса ресурсов со строгим типом. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture + { + get + { + return resourceCulture; + } + set + { + resourceCulture = value; + } + } + } +} diff --git a/Properties/Resources.resx b/Properties/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/Properties/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/Properties/Settings.Designer.cs b/Properties/Settings.Designer.cs new file mode 100644 index 0000000..58dbe3a --- /dev/null +++ b/Properties/Settings.Designer.cs @@ -0,0 +1,30 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace auto_repair_shop.Properties +{ + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "11.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/Properties/Settings.settings b/Properties/Settings.settings new file mode 100644 index 0000000..3964565 --- /dev/null +++ b/Properties/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/auto-repair-shop.csproj b/auto-repair-shop.csproj new file mode 100644 index 0000000..64bdf2c --- /dev/null +++ b/auto-repair-shop.csproj @@ -0,0 +1,136 @@ + + + + + Debug + AnyCPU + {5F8233C6-AD56-437F-80B9-9A0F64743F0D} + WinExe + auto_repair_shop + auto-repair-shop + v4.8 + 512 + true + true + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + packages\BouncyCastle.Cryptography.2.5.1\lib\net461\BouncyCastle.Cryptography.dll + + + packages\Google.Protobuf.3.30.0\lib\net45\Google.Protobuf.dll + + + packages\K4os.Compression.LZ4.1.3.8\lib\net462\K4os.Compression.LZ4.dll + + + packages\K4os.Compression.LZ4.Streams.1.3.8\lib\net462\K4os.Compression.LZ4.Streams.dll + + + packages\K4os.Hash.xxHash.1.0.8\lib\net462\K4os.Hash.xxHash.dll + + + packages\Microsoft.Bcl.AsyncInterfaces.5.0.0\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll + + + packages\MySql.Data.9.3.0\lib\net48\MySql.Data.dll + + + + packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll + + + + packages\System.Configuration.ConfigurationManager.8.0.0\lib\net462\System.Configuration.ConfigurationManager.dll + + + + packages\System.Diagnostics.DiagnosticSource.8.0.1\lib\net462\System.Diagnostics.DiagnosticSource.dll + + + packages\System.IO.Pipelines.5.0.2\lib\net461\System.IO.Pipelines.dll + + + + packages\System.Memory.4.5.5\lib\net461\System.Memory.dll + + + + packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll + + + packages\System.Runtime.CompilerServices.Unsafe.6.0.0\lib\net461\System.Runtime.CompilerServices.Unsafe.dll + + + packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll + + + + + + + + + + + + + packages\ZstdSharp.Port.0.8.5\lib\net462\ZstdSharp.dll + + + + + Form + + + Form1.cs + + + + + Form1.cs + + + ResXFileCodeGenerator + Resources.Designer.cs + Designer + + + True + Resources.resx + + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + True + Settings.settings + True + + + + + + + \ No newline at end of file diff --git a/auto-repair-shop.sln b/auto-repair-shop.sln new file mode 100644 index 0000000..fd46e91 --- /dev/null +++ b/auto-repair-shop.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.8.34511.84 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "auto-repair-shop", "auto-repair-shop.csproj", "{5F8233C6-AD56-437F-80B9-9A0F64743F0D}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {5F8233C6-AD56-437F-80B9-9A0F64743F0D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {5F8233C6-AD56-437F-80B9-9A0F64743F0D}.Debug|Any CPU.Build.0 = Debug|Any CPU + {5F8233C6-AD56-437F-80B9-9A0F64743F0D}.Release|Any CPU.ActiveCfg = Release|Any CPU + {5F8233C6-AD56-437F-80B9-9A0F64743F0D}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {37F80B97-6298-47A9-9652-E921D3E354B5} + EndGlobalSection +EndGlobal diff --git a/icon.ico b/icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..1ea94a94db2dc25421d85398669c4c34dafb6042 GIT binary patch literal 23037 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 Kf2zWW6!Sl#Ked+t literal 0 HcmV?d00001 diff --git a/packages.config b/packages.config new file mode 100644 index 0000000..9777fd7 --- /dev/null +++ b/packages.config @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file