diff --git a/Serial Observer - debug.exe b/Serial Observer - debug.exe
new file mode 100644
index 0000000..181964d
Binary files /dev/null and b/Serial Observer - debug.exe differ
diff --git a/Serial Observer/.vs/Serial Observer/v15/.suo b/Serial Observer/.vs/Serial Observer/v15/.suo
new file mode 100644
index 0000000..af79102
Binary files /dev/null and b/Serial Observer/.vs/Serial Observer/v15/.suo differ
diff --git a/Serial Observer/.vs/Serial Observer/v15/Server/sqlite3/db.lock b/Serial Observer/.vs/Serial Observer/v15/Server/sqlite3/db.lock
new file mode 100644
index 0000000..e69de29
diff --git a/Serial Observer/.vs/Serial Observer/v15/Server/sqlite3/storage.ide b/Serial Observer/.vs/Serial Observer/v15/Server/sqlite3/storage.ide
new file mode 100644
index 0000000..4b0830b
Binary files /dev/null and b/Serial Observer/.vs/Serial Observer/v15/Server/sqlite3/storage.ide differ
diff --git a/Serial Observer/Serial Observer.sln b/Serial Observer/Serial Observer.sln
new file mode 100644
index 0000000..3a463cf
--- /dev/null
+++ b/Serial Observer/Serial Observer.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 15
+VisualStudioVersion = 15.0.27428.2015
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Serial Observer", "Serial Observer\Serial Observer.csproj", "{8A164521-390A-4860-BA65-922256DAE7EF}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {8A164521-390A-4860-BA65-922256DAE7EF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {8A164521-390A-4860-BA65-922256DAE7EF}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {8A164521-390A-4860-BA65-922256DAE7EF}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {8A164521-390A-4860-BA65-922256DAE7EF}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {F74407AF-213E-4CFC-A774-E73189B76762}
+ EndGlobalSection
+EndGlobal
diff --git a/Serial Observer/Serial Observer/App.config b/Serial Observer/Serial Observer/App.config
new file mode 100644
index 0000000..731f6de
--- /dev/null
+++ b/Serial Observer/Serial Observer/App.config
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Serial Observer/Serial Observer/Form1.Designer.cs b/Serial Observer/Serial Observer/Form1.Designer.cs
new file mode 100644
index 0000000..e2e0a1f
--- /dev/null
+++ b/Serial Observer/Serial Observer/Form1.Designer.cs
@@ -0,0 +1,164 @@
+namespace Serial_Observer
+{
+ partial class Form1
+ {
+ ///
+ /// Variable nécessaire au concepteur.
+ ///
+ private System.ComponentModel.IContainer components = null;
+
+ ///
+ /// Nettoyage des ressources utilisées.
+ ///
+ /// true si les ressources managées doivent être supprimées ; sinon, false.
+ protected override void Dispose(bool disposing)
+ {
+ if (disposing && (components != null))
+ {
+ components.Dispose();
+ }
+ base.Dispose(disposing);
+ }
+
+ #region Code généré par le Concepteur Windows Form
+
+ ///
+ /// Méthode requise pour la prise en charge du concepteur - ne modifiez pas
+ /// le contenu de cette méthode avec l'éditeur de code.
+ ///
+ private void InitializeComponent()
+ {
+ this.listBox_portLogs = new System.Windows.Forms.ListBox();
+ this.comboBox_portName = new System.Windows.Forms.ComboBox();
+ this.comboBox_portSpeed = new System.Windows.Forms.ComboBox();
+ this.comboBox_portParity = new System.Windows.Forms.ComboBox();
+ this.comboBox_portData = new System.Windows.Forms.ComboBox();
+ this.comboBox_portStop = new System.Windows.Forms.ComboBox();
+ this.button_portConnect = new System.Windows.Forms.Button();
+ this.button_portDisconnect = new System.Windows.Forms.Button();
+ this.button_portSend = new System.Windows.Forms.Button();
+ this.textBox_textToSend = new System.Windows.Forms.TextBox();
+ this.SuspendLayout();
+ //
+ // listBox_portLogs
+ //
+ this.listBox_portLogs.FormattingEnabled = true;
+ this.listBox_portLogs.Location = new System.Drawing.Point(12, 39);
+ this.listBox_portLogs.Name = "listBox_portLogs";
+ this.listBox_portLogs.Size = new System.Drawing.Size(629, 147);
+ this.listBox_portLogs.TabIndex = 0;
+ //
+ // comboBox_portName
+ //
+ this.comboBox_portName.FormattingEnabled = true;
+ this.comboBox_portName.Location = new System.Drawing.Point(12, 12);
+ this.comboBox_portName.Name = "comboBox_portName";
+ this.comboBox_portName.Size = new System.Drawing.Size(121, 21);
+ this.comboBox_portName.TabIndex = 1;
+ //
+ // comboBox_portSpeed
+ //
+ this.comboBox_portSpeed.FormattingEnabled = true;
+ this.comboBox_portSpeed.Location = new System.Drawing.Point(139, 12);
+ this.comboBox_portSpeed.Name = "comboBox_portSpeed";
+ this.comboBox_portSpeed.Size = new System.Drawing.Size(121, 21);
+ this.comboBox_portSpeed.TabIndex = 2;
+ //
+ // comboBox_portParity
+ //
+ this.comboBox_portParity.FormattingEnabled = true;
+ this.comboBox_portParity.Location = new System.Drawing.Point(393, 12);
+ this.comboBox_portParity.Name = "comboBox_portParity";
+ this.comboBox_portParity.Size = new System.Drawing.Size(121, 21);
+ this.comboBox_portParity.TabIndex = 3;
+ //
+ // comboBox_portData
+ //
+ this.comboBox_portData.FormattingEnabled = true;
+ this.comboBox_portData.Location = new System.Drawing.Point(266, 12);
+ this.comboBox_portData.Name = "comboBox_portData";
+ this.comboBox_portData.Size = new System.Drawing.Size(121, 21);
+ this.comboBox_portData.TabIndex = 4;
+ //
+ // comboBox_portStop
+ //
+ this.comboBox_portStop.FormattingEnabled = true;
+ this.comboBox_portStop.Location = new System.Drawing.Point(520, 12);
+ this.comboBox_portStop.Name = "comboBox_portStop";
+ this.comboBox_portStop.Size = new System.Drawing.Size(121, 21);
+ this.comboBox_portStop.TabIndex = 5;
+ //
+ // button_portConnect
+ //
+ this.button_portConnect.Location = new System.Drawing.Point(12, 219);
+ this.button_portConnect.Name = "button_portConnect";
+ this.button_portConnect.Size = new System.Drawing.Size(248, 23);
+ this.button_portConnect.TabIndex = 6;
+ this.button_portConnect.Text = "Connecter";
+ this.button_portConnect.UseVisualStyleBackColor = true;
+ this.button_portConnect.Click += new System.EventHandler(this.button_portConnect_Click);
+ //
+ // button_portDisconnect
+ //
+ this.button_portDisconnect.Location = new System.Drawing.Point(266, 219);
+ this.button_portDisconnect.Name = "button_portDisconnect";
+ this.button_portDisconnect.Size = new System.Drawing.Size(248, 23);
+ this.button_portDisconnect.TabIndex = 7;
+ this.button_portDisconnect.Text = "Déconnecter";
+ this.button_portDisconnect.UseVisualStyleBackColor = true;
+ this.button_portDisconnect.Click += new System.EventHandler(this.button_portDisconnect_Click);
+ //
+ // button_portSend
+ //
+ this.button_portSend.Location = new System.Drawing.Point(520, 219);
+ this.button_portSend.Name = "button_portSend";
+ this.button_portSend.Size = new System.Drawing.Size(121, 23);
+ this.button_portSend.TabIndex = 8;
+ this.button_portSend.Text = "Envoyer";
+ this.button_portSend.UseVisualStyleBackColor = true;
+ this.button_portSend.Click += new System.EventHandler(this.button_portSend_Click);
+ //
+ // textBox_textToSend
+ //
+ this.textBox_textToSend.Location = new System.Drawing.Point(13, 193);
+ this.textBox_textToSend.Name = "textBox_textToSend";
+ this.textBox_textToSend.Size = new System.Drawing.Size(628, 20);
+ this.textBox_textToSend.TabIndex = 9;
+ //
+ // Form1
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(800, 450);
+ this.Controls.Add(this.textBox_textToSend);
+ this.Controls.Add(this.button_portSend);
+ this.Controls.Add(this.button_portDisconnect);
+ this.Controls.Add(this.button_portConnect);
+ this.Controls.Add(this.comboBox_portStop);
+ this.Controls.Add(this.comboBox_portData);
+ this.Controls.Add(this.comboBox_portParity);
+ this.Controls.Add(this.comboBox_portSpeed);
+ this.Controls.Add(this.comboBox_portName);
+ this.Controls.Add(this.listBox_portLogs);
+ this.Name = "Form1";
+ this.Text = "Form1";
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.ListBox listBox_portLogs;
+ private System.Windows.Forms.ComboBox comboBox_portName;
+ private System.Windows.Forms.ComboBox comboBox_portSpeed;
+ private System.Windows.Forms.ComboBox comboBox_portParity;
+ private System.Windows.Forms.ComboBox comboBox_portData;
+ private System.Windows.Forms.ComboBox comboBox_portStop;
+ private System.Windows.Forms.Button button_portConnect;
+ private System.Windows.Forms.Button button_portDisconnect;
+ private System.Windows.Forms.Button button_portSend;
+ private System.Windows.Forms.TextBox textBox_textToSend;
+ }
+}
+
diff --git a/Serial Observer/Serial Observer/Form1.cs b/Serial Observer/Serial Observer/Form1.cs
new file mode 100644
index 0000000..b98456a
--- /dev/null
+++ b/Serial Observer/Serial Observer/Form1.cs
@@ -0,0 +1,226 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.IO.Ports;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace Serial_Observer
+{
+ public partial class Form1 : Form
+ {
+ // Variables
+ SerialPort serialPort;
+ AddListItem myDelegate;
+
+ // Methods
+ public delegate void AddListItem(String myString);
+
+ public Form1()
+ {
+ // Initialize
+ InitializeComponent();
+ InitializeComboBox();
+
+ // Form size
+ this.Size = new Size(670, 300);
+ this.FormBorderStyle = FormBorderStyle.Fixed3D;
+
+ // Form options
+ this.Text = "Serial Observer";
+
+ // Buttons
+ modifyButtonsAccess(true, false, false);
+ }
+
+ /***************************** Events *****************************/
+ private void button_portConnect_Click(object sender, EventArgs e)
+ {
+ try
+ {
+ // Création d'un port avec les paramètres indiqués
+ serialPort = new SerialPort(comboBox_portName.Items[comboBox_portName.SelectedIndex].ToString(), parsePortSpeed(comboBox_portSpeed.Items[comboBox_portSpeed.SelectedIndex].ToString()), parsePortParity(comboBox_portParity.Items[comboBox_portParity.SelectedIndex].ToString()),parsePortData(comboBox_portData.Items[comboBox_portData.SelectedIndex].ToString()),parsePortStop(comboBox_portStop.Items[comboBox_portStop.SelectedIndex].ToString()));
+
+ // Ouverture du port créé
+ serialPort.Open();
+
+ // Evénement à la réception de données
+ serialPort.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);
+
+ // Modification des boutons de contrôle
+ modifyButtonsAccess(false, true, true);
+
+ // Effacement du logger
+ listBox_portLogs.Items.Clear();
+
+ // Confirmation de réussite
+ MessageBox.Show("L'ouverture du port est un succès.", "Succès !", MessageBoxButtons.OK, MessageBoxIcon.Information);
+ }
+ catch(ArgumentOutOfRangeException)
+ {
+ // Une des listes déroulantes est vide
+ MessageBox.Show("Vous devez choisir une configuration !", "Erreur !", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ }
+ catch(Exception ex)
+ {
+ MessageBox.Show(ex.Message, "Erreur !", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ }
+ }
+
+ private void button_portDisconnect_Click(object sender, EventArgs e)
+ {
+ try
+ {
+ serialPort.Close();
+ modifyButtonsAccess(true, false, false);
+ MessageBox.Show("La fermeture du port est un succès.", "Succès !", MessageBoxButtons.OK, MessageBoxIcon.Information);
+ }
+ catch(Exception ex)
+ {
+ MessageBox.Show(ex.Message, "Erreur !", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ }
+ }
+
+ private void button_portSend_Click(object sender, EventArgs e)
+ {
+ try
+ {
+ serialPort.Write(textBox_textToSend.Text);
+ textBox_textToSend.Clear();
+ }
+ catch(Exception ex)
+ {
+ MessageBox.Show(ex.Message, "Erreur !", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ }
+ }
+
+ private void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
+ {
+ try
+ {
+ SerialPort sp = (SerialPort)sender;
+ string indata = sp.ReadLine();
+ myDelegate = new AddListItem(AddListItemMethod);
+ listBox_portLogs.Invoke(myDelegate, new Object[] { "[" + DateTime.Now.Hour + ":" + DateTime.Now.Minute + ":" + DateTime.Now.Second + "] : " + indata });
+ }
+ catch (Exception ex)
+ {
+ MessageBox.Show(ex.Message, "Erreur !", MessageBoxButtons.OK, MessageBoxIcon.Error);
+ }
+ }
+
+ /************************* Private Methods *************************/
+ private void InitializeComboBox()
+ {
+ // Port name
+ comboBox_portName.DropDownStyle = ComboBoxStyle.DropDownList;
+ string[] ports = SerialPort.GetPortNames();
+ foreach(string port in ports)
+ {
+ comboBox_portName.Items.Add(port);
+ }
+
+ // Port speed
+ comboBox_portSpeed.DropDownStyle = ComboBoxStyle.DropDownList;
+ int[] speeds = {1200,2400,4800,9600,14400,19200,28800,38400,57600,115200,230400};
+ foreach(int speed in speeds)
+ {
+ comboBox_portSpeed.Items.Add(speed);
+ }
+
+ // Port data
+ comboBox_portData.DropDownStyle = ComboBoxStyle.DropDownList;
+ int[] datas = {5,6,7,8};
+ foreach(int data in datas)
+ {
+ comboBox_portData.Items.Add(data);
+ }
+
+ // Port parity
+ comboBox_portParity.DropDownStyle = ComboBoxStyle.DropDownList;
+ String[] parities = {Parity.None.ToString(),Parity.Even.ToString(),Parity.Odd.ToString(),Parity.Mark.ToString(),Parity.Space.ToString()};
+ foreach(string parity in parities)
+ {
+ comboBox_portParity.Items.Add(parity);
+ }
+
+ // Port stop
+ comboBox_portStop.DropDownStyle = ComboBoxStyle.DropDownList;
+ String[] stops = {StopBits.None.ToString(),StopBits.One.ToString(),StopBits.OnePointFive.ToString(),StopBits.Two.ToString()};
+ foreach(string stop in stops)
+ {
+ comboBox_portStop.Items.Add(stop);
+ }
+ }
+
+ private int parsePortSpeed(string speed)
+ {
+ return (int.Parse(speed));
+ }
+
+ private Parity parsePortParity(string parity)
+ {
+ if(parity == "None")
+ {
+ return (Parity.None);
+ }
+ else if(parity == "Even")
+ {
+ return (Parity.Even);
+ }
+ else if(parity == "Odd")
+ {
+ return (Parity.Odd);
+ }
+ else if(parity == "Mark")
+ {
+ return (Parity.Mark);
+ }
+ else
+ {
+ return (Parity.Space);
+ }
+ }
+
+ private int parsePortData(string data)
+ {
+ return (int.Parse(data));
+ }
+
+ private StopBits parsePortStop(string stop)
+ {
+ if (stop == "None")
+ {
+ return (StopBits.None);
+ }
+ else if (stop == "One")
+ {
+ return (StopBits.One);
+ }
+ else if (stop == "OnePointFive")
+ {
+ return (StopBits.OnePointFive);
+ }
+ else
+ {
+ return (StopBits.Two);
+ }
+ }
+
+ private void modifyButtonsAccess(Boolean _buttonPortConnect, Boolean _buttonPortDisconnect, Boolean _buttonPortSend)
+ {
+ button_portConnect.Enabled = _buttonPortConnect;
+ button_portDisconnect.Enabled = _buttonPortDisconnect;
+ button_portSend.Enabled = _buttonPortSend;
+ }
+
+ private void AddListItemMethod(String myString)
+ {
+ listBox_portLogs.Items.Add(myString);
+ }
+ }
+}
diff --git a/Serial Observer/Serial Observer/Form1.resx b/Serial Observer/Serial Observer/Form1.resx
new file mode 100644
index 0000000..1af7de1
--- /dev/null
+++ b/Serial Observer/Serial Observer/Form1.resx
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 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
+
+
\ No newline at end of file
diff --git a/Serial Observer/Serial Observer/Program.cs b/Serial Observer/Serial Observer/Program.cs
new file mode 100644
index 0000000..da5e3fe
--- /dev/null
+++ b/Serial Observer/Serial Observer/Program.cs
@@ -0,0 +1,22 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Threading.Tasks;
+using System.Windows.Forms;
+
+namespace Serial_Observer
+{
+ static class Program
+ {
+ ///
+ /// Point d'entrée principal de l'application.
+ ///
+ [STAThread]
+ static void Main()
+ {
+ Application.EnableVisualStyles();
+ Application.SetCompatibleTextRenderingDefault(false);
+ Application.Run(new Form1());
+ }
+ }
+}
diff --git a/Serial Observer/Serial Observer/Properties/AssemblyInfo.cs b/Serial Observer/Serial Observer/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..a1048b8
--- /dev/null
+++ b/Serial Observer/Serial Observer/Properties/AssemblyInfo.cs
@@ -0,0 +1,36 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// Les informations générales relatives à un assembly dépendent de
+// l'ensemble d'attributs suivant. Changez les valeurs de ces attributs pour modifier les informations
+// associées à un assembly.
+[assembly: AssemblyTitle("Serial Observer")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("Serial Observer")]
+[assembly: AssemblyCopyright("Copyright © 2018")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// L'affectation de la valeur false à ComVisible rend les types invisibles dans cet assembly
+// aux composants COM. Si vous devez accéder à un type dans cet assembly à partir de
+// COM, affectez la valeur true à l'attribut ComVisible sur ce type.
+[assembly: ComVisible(false)]
+
+// Le GUID suivant est pour l'ID de la typelib si ce projet est exposé à COM
+[assembly: Guid("8a164521-390a-4860-ba65-922256dae7ef")]
+
+// Les informations de version pour un assembly se composent des quatre valeurs suivantes :
+//
+// Version principale
+// Version secondaire
+// Numéro de build
+// Révision
+//
+// Vous pouvez spécifier toutes les valeurs ou indiquer les numéros de build et de révision par défaut
+// en utilisant '*', comme indiqué ci-dessous :
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/Serial Observer/Serial Observer/Properties/Resources.Designer.cs b/Serial Observer/Serial Observer/Properties/Resources.Designer.cs
new file mode 100644
index 0000000..5470d44
--- /dev/null
+++ b/Serial Observer/Serial Observer/Properties/Resources.Designer.cs
@@ -0,0 +1,71 @@
+//------------------------------------------------------------------------------
+//
+// Ce code a été généré par un outil.
+// Version du runtime :4.0.30319.42000
+//
+// Les modifications apportées à ce fichier peuvent provoquer un comportement incorrect et seront perdues si
+// le code est régénéré.
+//
+//------------------------------------------------------------------------------
+
+namespace Serial_Observer.Properties
+{
+
+
+ ///
+ /// Une classe de ressource fortement typée destinée, entre autres, à la consultation des chaînes localisées.
+ ///
+ // Cette classe a été générée automatiquement par la classe StronglyTypedResourceBuilder
+ // à l'aide d'un outil, tel que ResGen ou Visual Studio.
+ // Pour ajouter ou supprimer un membre, modifiez votre fichier .ResX, puis réexécutez ResGen
+ // avec l'option /str ou régénérez votre projet 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()
+ {
+ }
+
+ ///
+ /// Retourne l'instance ResourceManager mise en cache utilisée par cette classe.
+ ///
+ [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("Serial_Observer.Properties.Resources", typeof(Resources).Assembly);
+ resourceMan = temp;
+ }
+ return resourceMan;
+ }
+ }
+
+ ///
+ /// Remplace la propriété CurrentUICulture du thread actuel pour toutes
+ /// les recherches de ressources à l'aide de cette classe de ressource fortement typée.
+ ///
+ [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/Serial Observer/Serial Observer/Properties/Resources.resx b/Serial Observer/Serial Observer/Properties/Resources.resx
new file mode 100644
index 0000000..af7dbeb
--- /dev/null
+++ b/Serial Observer/Serial Observer/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/Serial Observer/Serial Observer/Properties/Settings.Designer.cs b/Serial Observer/Serial Observer/Properties/Settings.Designer.cs
new file mode 100644
index 0000000..e3ee1a5
--- /dev/null
+++ b/Serial Observer/Serial Observer/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 Serial_Observer.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/Serial Observer/Serial Observer/Properties/Settings.settings b/Serial Observer/Serial Observer/Properties/Settings.settings
new file mode 100644
index 0000000..3964565
--- /dev/null
+++ b/Serial Observer/Serial Observer/Properties/Settings.settings
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/Serial Observer/Serial Observer/Serial Observer.csproj b/Serial Observer/Serial Observer/Serial Observer.csproj
new file mode 100644
index 0000000..90d35a4
--- /dev/null
+++ b/Serial Observer/Serial Observer/Serial Observer.csproj
@@ -0,0 +1,82 @@
+
+
+
+
+ Debug
+ AnyCPU
+ {8A164521-390A-4860-BA65-922256DAE7EF}
+ WinExe
+ Serial_Observer
+ Serial Observer
+ v4.6.1
+ 512
+ true
+
+
+ AnyCPU
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE
+ prompt
+ 4
+
+
+ AnyCPU
+ pdbonly
+ true
+ bin\Release\
+ TRACE
+ prompt
+ 4
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 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/Serial Observer/Serial Observer/bin/Debug/Serial Observer.exe b/Serial Observer/Serial Observer/bin/Debug/Serial Observer.exe
new file mode 100644
index 0000000..181964d
Binary files /dev/null and b/Serial Observer/Serial Observer/bin/Debug/Serial Observer.exe differ
diff --git a/Serial Observer/Serial Observer/bin/Debug/Serial Observer.exe.config b/Serial Observer/Serial Observer/bin/Debug/Serial Observer.exe.config
new file mode 100644
index 0000000..731f6de
--- /dev/null
+++ b/Serial Observer/Serial Observer/bin/Debug/Serial Observer.exe.config
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Serial Observer/Serial Observer/bin/Debug/Serial Observer.pdb b/Serial Observer/Serial Observer/bin/Debug/Serial Observer.pdb
new file mode 100644
index 0000000..2826641
Binary files /dev/null and b/Serial Observer/Serial Observer/bin/Debug/Serial Observer.pdb differ
diff --git a/Serial Observer/Serial Observer/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/Serial Observer/Serial Observer/obj/Debug/DesignTimeResolveAssemblyReferences.cache
new file mode 100644
index 0000000..e2eb576
Binary files /dev/null and b/Serial Observer/Serial Observer/obj/Debug/DesignTimeResolveAssemblyReferences.cache differ
diff --git a/Serial Observer/Serial Observer/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/Serial Observer/Serial Observer/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
new file mode 100644
index 0000000..f69156d
Binary files /dev/null and b/Serial Observer/Serial Observer/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ
diff --git a/Serial Observer/Serial Observer/obj/Debug/Serial Observer.csproj.CoreCompileInputs.cache b/Serial Observer/Serial Observer/obj/Debug/Serial Observer.csproj.CoreCompileInputs.cache
new file mode 100644
index 0000000..770a70d
--- /dev/null
+++ b/Serial Observer/Serial Observer/obj/Debug/Serial Observer.csproj.CoreCompileInputs.cache
@@ -0,0 +1 @@
+972a4f89a3424dcc7a02b600beecf4a0500705f9
diff --git a/Serial Observer/Serial Observer/obj/Debug/Serial Observer.csproj.FileListAbsolute.txt b/Serial Observer/Serial Observer/obj/Debug/Serial Observer.csproj.FileListAbsolute.txt
new file mode 100644
index 0000000..9666ace
--- /dev/null
+++ b/Serial Observer/Serial Observer/obj/Debug/Serial Observer.csproj.FileListAbsolute.txt
@@ -0,0 +1,10 @@
+C:\Users\Jean-Daniel\Desktop\Serial Observer\Serial Observer\bin\Debug\Serial Observer.exe.config
+C:\Users\Jean-Daniel\Desktop\Serial Observer\Serial Observer\bin\Debug\Serial Observer.exe
+C:\Users\Jean-Daniel\Desktop\Serial Observer\Serial Observer\bin\Debug\Serial Observer.pdb
+C:\Users\Jean-Daniel\Desktop\Serial Observer\Serial Observer\obj\Debug\Serial Observer.csprojResolveAssemblyReference.cache
+C:\Users\Jean-Daniel\Desktop\Serial Observer\Serial Observer\obj\Debug\Serial_Observer.Properties.Resources.resources
+C:\Users\Jean-Daniel\Desktop\Serial Observer\Serial Observer\obj\Debug\Serial Observer.csproj.GenerateResource.cache
+C:\Users\Jean-Daniel\Desktop\Serial Observer\Serial Observer\obj\Debug\Serial Observer.csproj.CoreCompileInputs.cache
+C:\Users\Jean-Daniel\Desktop\Serial Observer\Serial Observer\obj\Debug\Serial Observer.exe
+C:\Users\Jean-Daniel\Desktop\Serial Observer\Serial Observer\obj\Debug\Serial Observer.pdb
+C:\Users\Jean-Daniel\Desktop\Serial Observer\Serial Observer\obj\Debug\Serial_Observer.Form1.resources
diff --git a/Serial Observer/Serial Observer/obj/Debug/Serial Observer.csproj.GenerateResource.cache b/Serial Observer/Serial Observer/obj/Debug/Serial Observer.csproj.GenerateResource.cache
new file mode 100644
index 0000000..3e61210
Binary files /dev/null and b/Serial Observer/Serial Observer/obj/Debug/Serial Observer.csproj.GenerateResource.cache differ
diff --git a/Serial Observer/Serial Observer/obj/Debug/Serial Observer.csprojResolveAssemblyReference.cache b/Serial Observer/Serial Observer/obj/Debug/Serial Observer.csprojResolveAssemblyReference.cache
new file mode 100644
index 0000000..e7dd63f
Binary files /dev/null and b/Serial Observer/Serial Observer/obj/Debug/Serial Observer.csprojResolveAssemblyReference.cache differ
diff --git a/Serial Observer/Serial Observer/obj/Debug/Serial Observer.exe b/Serial Observer/Serial Observer/obj/Debug/Serial Observer.exe
new file mode 100644
index 0000000..181964d
Binary files /dev/null and b/Serial Observer/Serial Observer/obj/Debug/Serial Observer.exe differ
diff --git a/Serial Observer/Serial Observer/obj/Debug/Serial Observer.pdb b/Serial Observer/Serial Observer/obj/Debug/Serial Observer.pdb
new file mode 100644
index 0000000..2826641
Binary files /dev/null and b/Serial Observer/Serial Observer/obj/Debug/Serial Observer.pdb differ
diff --git a/Serial Observer/Serial Observer/obj/Debug/Serial_Observer.Form1.resources b/Serial Observer/Serial Observer/obj/Debug/Serial_Observer.Form1.resources
new file mode 100644
index 0000000..6c05a97
Binary files /dev/null and b/Serial Observer/Serial Observer/obj/Debug/Serial_Observer.Form1.resources differ
diff --git a/Serial Observer/Serial Observer/obj/Debug/Serial_Observer.Properties.Resources.resources b/Serial Observer/Serial Observer/obj/Debug/Serial_Observer.Properties.Resources.resources
new file mode 100644
index 0000000..6c05a97
Binary files /dev/null and b/Serial Observer/Serial Observer/obj/Debug/Serial_Observer.Properties.Resources.resources differ
diff --git a/Serial Observer/Serial Observer/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/Serial Observer/Serial Observer/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
new file mode 100644
index 0000000..e69de29
diff --git a/Serial Observer/Serial Observer/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/Serial Observer/Serial Observer/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
new file mode 100644
index 0000000..e69de29
diff --git a/Serial Observer/Serial Observer/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/Serial Observer/Serial Observer/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
new file mode 100644
index 0000000..e69de29