diff --git a/Form1.Designer.cs b/Form1.Designer.cs
new file mode 100644
index 0000000..c70b444
--- /dev/null
+++ b/Form1.Designer.cs
@@ -0,0 +1,118 @@
+namespace ResourceConverter
+{
+ 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.textBox1 = new System.Windows.Forms.TextBox();
+ this.label1 = new System.Windows.Forms.Label();
+ this.label2 = new System.Windows.Forms.Label();
+ this.textBox2 = new System.Windows.Forms.TextBox();
+ this.label3 = new System.Windows.Forms.Label();
+ this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog();
+ this.folderBrowserDialog1 = new System.Windows.Forms.FolderBrowserDialog();
+ this.SuspendLayout();
+ //
+ // textBox1
+ //
+ this.textBox1.Location = new System.Drawing.Point(141, 21);
+ this.textBox1.Name = "textBox1";
+ this.textBox1.Size = new System.Drawing.Size(308, 20);
+ this.textBox1.TabIndex = 0;
+ this.textBox1.Click += new System.EventHandler(this.textBox1_Click);
+ //
+ // label1
+ //
+ this.label1.AutoSize = true;
+ this.label1.Location = new System.Drawing.Point(13, 24);
+ this.label1.Name = "label1";
+ this.label1.Size = new System.Drawing.Size(103, 13);
+ this.label1.TabIndex = 1;
+ this.label1.Text = "Select .resource file:";
+ //
+ // label2
+ //
+ this.label2.AutoSize = true;
+ this.label2.Location = new System.Drawing.Point(13, 69);
+ this.label2.Name = "label2";
+ this.label2.Size = new System.Drawing.Size(112, 13);
+ this.label2.TabIndex = 3;
+ this.label2.Text = "Select folder directory:";
+ //
+ // textBox2
+ //
+ this.textBox2.Location = new System.Drawing.Point(141, 66);
+ this.textBox2.Name = "textBox2";
+ this.textBox2.Size = new System.Drawing.Size(308, 20);
+ this.textBox2.TabIndex = 2;
+ //
+ // label3
+ //
+ this.label3.AutoSize = true;
+ this.label3.Location = new System.Drawing.Point(53, 46);
+ this.label3.Name = "label3";
+ this.label3.Size = new System.Drawing.Size(23, 13);
+ this.label3.TabIndex = 4;
+ this.label3.Text = "OR";
+ //
+ // openFileDialog1
+ //
+ this.openFileDialog1.DefaultExt = "resource";
+ this.openFileDialog1.Filter = "Resource File|*.resources";
+ this.openFileDialog1.Title = "Open Resource File";
+ //
+ // Form1
+ //
+ this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
+ this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+ this.ClientSize = new System.Drawing.Size(461, 98);
+ this.Controls.Add(this.label3);
+ this.Controls.Add(this.label2);
+ this.Controls.Add(this.textBox2);
+ this.Controls.Add(this.label1);
+ this.Controls.Add(this.textBox1);
+ this.MaximizeBox = false;
+ this.Name = "Form1";
+ this.ShowIcon = false;
+ this.Text = "Resource Converter (.resource to .resx)";
+ this.ResumeLayout(false);
+ this.PerformLayout();
+
+ }
+
+ #endregion
+
+ private System.Windows.Forms.TextBox textBox1;
+ private System.Windows.Forms.Label label1;
+ private System.Windows.Forms.Label label2;
+ private System.Windows.Forms.TextBox textBox2;
+ private System.Windows.Forms.Label label3;
+ private System.Windows.Forms.OpenFileDialog openFileDialog1;
+ private System.Windows.Forms.FolderBrowserDialog folderBrowserDialog1;
+ }
+}
+
diff --git a/Form1.cs b/Form1.cs
new file mode 100644
index 0000000..752c243
--- /dev/null
+++ b/Form1.cs
@@ -0,0 +1,43 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel;
+using System.Data;
+using System.Drawing;
+using System.Linq;
+using System.Text;
+using System.IO;
+using System.Windows.Forms;
+using System.Diagnostics;
+
+namespace ResourceConverter
+{
+
+ //"C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools"
+ public partial class Form1 : Form
+ {
+ public Form1()
+ {
+ InitializeComponent();
+ }
+
+ private void textBox1_Click(object sender, EventArgs e)
+ {
+ DialogResult result = openFileDialog1.ShowDialog();
+ if (result == DialogResult.OK)
+ {
+ ProcessStartInfo startInfo = new ProcessStartInfo();
+ startInfo.CreateNoWindow = false;
+ startInfo.UseShellExecute = false;
+ startInfo.FileName = @"C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools\ResGen.exe";
+ startInfo.WindowStyle = ProcessWindowStyle.Hidden;
+
+ // Part 2: set arguments.
+ startInfo.Arguments = "ResGen " + openFileDialog1.FileName + " [" + Path.GetDirectoryName(openFileDialog1.FileName) + @"\" + Path.GetFileNameWithoutExtension(openFileDialog1.FileName) + ".resx]";
+
+ //Console.WriteLine("ResGen " + openFileDialog1.FileName + " [" + Path.GetDirectoryName(openFileDialog1.FileName) + @"\" + Path.GetFileNameWithoutExtension(openFileDialog1.FileName) + ".resx]");
+
+ Process.Start(startInfo);
+ }
+ }
+ }
+}
diff --git a/Form1.resx b/Form1.resx
new file mode 100644
index 0000000..43fdaf2
--- /dev/null
+++ b/Form1.resx
@@ -0,0 +1,126 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 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
+
+
+ 157, 17
+
+
\ No newline at end of file
diff --git a/Program.cs b/Program.cs
new file mode 100644
index 0000000..ccb4137
--- /dev/null
+++ b/Program.cs
@@ -0,0 +1,21 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Windows.Forms;
+
+namespace ResourceConverter
+{
+ 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/Properties/AssemblyInfo.cs b/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..f189b05
--- /dev/null
+++ b/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("ResourceConverter")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("ResourceConverter")]
+[assembly: AssemblyCopyright("Copyright © 2020")]
+[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("e9ec9d76-ece0-40c6-9b04-75bd498e586b")]
+
+// 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/Properties/Resources.Designer.cs b/Properties/Resources.Designer.cs
new file mode 100644
index 0000000..78dd45b
--- /dev/null
+++ b/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 ResourceConverter.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("ResourceConverter.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/Properties/Resources.resx b/Properties/Resources.resx
new file mode 100644
index 0000000..ffecec8
--- /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..7b7e770
--- /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 ResourceConverter.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..abf36c5
--- /dev/null
+++ b/Properties/Settings.settings
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/ResourceConverter.csproj b/ResourceConverter.csproj
new file mode 100644
index 0000000..f3e8987
--- /dev/null
+++ b/ResourceConverter.csproj
@@ -0,0 +1,78 @@
+
+
+
+
+ Debug
+ AnyCPU
+ {E9EC9D76-ECE0-40C6-9B04-75BD498E586B}
+ WinExe
+ ResourceConverter
+ ResourceConverter
+ v4.0
+ 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/ResourceConverter.sln b/ResourceConverter.sln
new file mode 100644
index 0000000..ecab19b
--- /dev/null
+++ b/ResourceConverter.sln
@@ -0,0 +1,25 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.29418.71
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ResourceConverter", "ResourceConverter.csproj", "{E9EC9D76-ECE0-40C6-9B04-75BD498E586B}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {E9EC9D76-ECE0-40C6-9B04-75BD498E586B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {E9EC9D76-ECE0-40C6-9B04-75BD498E586B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {E9EC9D76-ECE0-40C6-9B04-75BD498E586B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {E9EC9D76-ECE0-40C6-9B04-75BD498E586B}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {8FD9C1A5-A302-462A-93F2-1540D8EFA62B}
+ EndGlobalSection
+EndGlobal
diff --git a/bin/Debug/ResourceConverter.exe b/bin/Debug/ResourceConverter.exe
new file mode 100644
index 0000000..826929b
Binary files /dev/null and b/bin/Debug/ResourceConverter.exe differ
diff --git a/bin/Debug/ResourceConverter.pdb b/bin/Debug/ResourceConverter.pdb
new file mode 100644
index 0000000..82288f6
Binary files /dev/null and b/bin/Debug/ResourceConverter.pdb differ
diff --git a/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/obj/Debug/DesignTimeResolveAssemblyReferences.cache
new file mode 100644
index 0000000..8cf7883
Binary files /dev/null and b/obj/Debug/DesignTimeResolveAssemblyReferences.cache differ
diff --git a/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
new file mode 100644
index 0000000..6cf8240
Binary files /dev/null and b/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ
diff --git a/obj/Debug/ResourceConverter.Form1.resources b/obj/Debug/ResourceConverter.Form1.resources
new file mode 100644
index 0000000..6c05a97
Binary files /dev/null and b/obj/Debug/ResourceConverter.Form1.resources differ
diff --git a/obj/Debug/ResourceConverter.Properties.Resources.resources b/obj/Debug/ResourceConverter.Properties.Resources.resources
new file mode 100644
index 0000000..6c05a97
Binary files /dev/null and b/obj/Debug/ResourceConverter.Properties.Resources.resources differ
diff --git a/obj/Debug/ResourceConverter.csproj.FileListAbsolute.txt b/obj/Debug/ResourceConverter.csproj.FileListAbsolute.txt
new file mode 100644
index 0000000..fa486d8
--- /dev/null
+++ b/obj/Debug/ResourceConverter.csproj.FileListAbsolute.txt
@@ -0,0 +1,8 @@
+C:\Users\boule\Documents\Visual Studio 2019\Projects\ResourceConverter\bin\Debug\ResourceConverter.exe
+C:\Users\boule\Documents\Visual Studio 2019\Projects\ResourceConverter\bin\Debug\ResourceConverter.pdb
+C:\Users\boule\Documents\Visual Studio 2019\Projects\ResourceConverter\obj\Debug\ResourceConverter.csprojAssemblyReference.cache
+C:\Users\boule\Documents\Visual Studio 2019\Projects\ResourceConverter\obj\Debug\ResourceConverter.Form1.resources
+C:\Users\boule\Documents\Visual Studio 2019\Projects\ResourceConverter\obj\Debug\ResourceConverter.Properties.Resources.resources
+C:\Users\boule\Documents\Visual Studio 2019\Projects\ResourceConverter\obj\Debug\ResourceConverter.csproj.GenerateResource.cache
+C:\Users\boule\Documents\Visual Studio 2019\Projects\ResourceConverter\obj\Debug\ResourceConverter.exe
+C:\Users\boule\Documents\Visual Studio 2019\Projects\ResourceConverter\obj\Debug\ResourceConverter.pdb
diff --git a/obj/Debug/ResourceConverter.csproj.GenerateResource.cache b/obj/Debug/ResourceConverter.csproj.GenerateResource.cache
new file mode 100644
index 0000000..5024480
Binary files /dev/null and b/obj/Debug/ResourceConverter.csproj.GenerateResource.cache differ
diff --git a/obj/Debug/ResourceConverter.csprojAssemblyReference.cache b/obj/Debug/ResourceConverter.csprojAssemblyReference.cache
new file mode 100644
index 0000000..282c79f
Binary files /dev/null and b/obj/Debug/ResourceConverter.csprojAssemblyReference.cache differ
diff --git a/obj/Debug/ResourceConverter.exe b/obj/Debug/ResourceConverter.exe
new file mode 100644
index 0000000..826929b
Binary files /dev/null and b/obj/Debug/ResourceConverter.exe differ
diff --git a/obj/Debug/ResourceConverter.pdb b/obj/Debug/ResourceConverter.pdb
new file mode 100644
index 0000000..82288f6
Binary files /dev/null and b/obj/Debug/ResourceConverter.pdb differ