commit 414fff12b5a60052456d80ff6aaae709aa4a3bfb Author: Eugen Höglinger Date: Fri Dec 16 10:16:00 2022 +0100 InitializeComponent Speichert Single- und Multi-Group XML-Dateien diff --git a/.vs/SaveXMLFile.git/FileContentIndex/2a22d994-36a7-49ed-9ef0-3ffa5e48c0fc.vsidx b/.vs/SaveXMLFile.git/FileContentIndex/2a22d994-36a7-49ed-9ef0-3ffa5e48c0fc.vsidx new file mode 100644 index 0000000..c0307ec Binary files /dev/null and b/.vs/SaveXMLFile.git/FileContentIndex/2a22d994-36a7-49ed-9ef0-3ffa5e48c0fc.vsidx differ diff --git a/.vs/SaveXMLFile.git/FileContentIndex/8d15290d-4645-4410-95e2-1fd21b5e0560.vsidx b/.vs/SaveXMLFile.git/FileContentIndex/8d15290d-4645-4410-95e2-1fd21b5e0560.vsidx new file mode 100644 index 0000000..12b2fbc Binary files /dev/null and b/.vs/SaveXMLFile.git/FileContentIndex/8d15290d-4645-4410-95e2-1fd21b5e0560.vsidx differ diff --git a/.vs/SaveXMLFile.git/FileContentIndex/9a8b72b4-bea1-481b-94b1-aa10ad8faf14.vsidx b/.vs/SaveXMLFile.git/FileContentIndex/9a8b72b4-bea1-481b-94b1-aa10ad8faf14.vsidx new file mode 100644 index 0000000..2a8b88a Binary files /dev/null and b/.vs/SaveXMLFile.git/FileContentIndex/9a8b72b4-bea1-481b-94b1-aa10ad8faf14.vsidx differ diff --git a/.vs/SaveXMLFile.git/FileContentIndex/c9e4e5ad-3a52-49be-a3b2-7ac447796de5.vsidx b/.vs/SaveXMLFile.git/FileContentIndex/c9e4e5ad-3a52-49be-a3b2-7ac447796de5.vsidx new file mode 100644 index 0000000..e04d52c Binary files /dev/null and b/.vs/SaveXMLFile.git/FileContentIndex/c9e4e5ad-3a52-49be-a3b2-7ac447796de5.vsidx differ diff --git a/.vs/SaveXMLFile.git/FileContentIndex/read.lock b/.vs/SaveXMLFile.git/FileContentIndex/read.lock new file mode 100644 index 0000000..e69de29 diff --git a/.vs/SaveXMLFile.git/v17/.suo b/.vs/SaveXMLFile.git/v17/.suo new file mode 100644 index 0000000..29f15b4 Binary files /dev/null and b/.vs/SaveXMLFile.git/v17/.suo differ diff --git a/Daten/Test.xml b/Daten/Test.xml new file mode 100644 index 0000000..86589b1 --- /dev/null +++ b/Daten/Test.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/Daten/Test.xml_orig b/Daten/Test.xml_orig new file mode 100644 index 0000000..86589b1 --- /dev/null +++ b/Daten/Test.xml_orig @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/SaveXMLFile.git.sln b/SaveXMLFile.git.sln new file mode 100644 index 0000000..b4c34e1 --- /dev/null +++ b/SaveXMLFile.git.sln @@ -0,0 +1,31 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.4.33122.133 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SaveXMLFile", "SaveXMLFile\SaveXMLFile.csproj", "{875729B3-8DE0-40CE-9FE0-BD98F1DBA463}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Test_SaveXMLFile", "Test_SaveXMLFile\Test_SaveXMLFile.csproj", "{34DCA2B4-1B0F-461F-A937-47713C0481B6}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {875729B3-8DE0-40CE-9FE0-BD98F1DBA463}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {875729B3-8DE0-40CE-9FE0-BD98F1DBA463}.Debug|Any CPU.Build.0 = Debug|Any CPU + {875729B3-8DE0-40CE-9FE0-BD98F1DBA463}.Release|Any CPU.ActiveCfg = Release|Any CPU + {875729B3-8DE0-40CE-9FE0-BD98F1DBA463}.Release|Any CPU.Build.0 = Release|Any CPU + {34DCA2B4-1B0F-461F-A937-47713C0481B6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {34DCA2B4-1B0F-461F-A937-47713C0481B6}.Debug|Any CPU.Build.0 = Debug|Any CPU + {34DCA2B4-1B0F-461F-A937-47713C0481B6}.Release|Any CPU.ActiveCfg = Release|Any CPU + {34DCA2B4-1B0F-461F-A937-47713C0481B6}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {A82CA882-C32E-4FB7-AC15-3B40D68A5C57} + EndGlobalSection +EndGlobal diff --git a/SaveXMLFile/Properties/AppResources.Designer.cs b/SaveXMLFile/Properties/AppResources.Designer.cs new file mode 100644 index 0000000..f5afcdb --- /dev/null +++ b/SaveXMLFile/Properties/AppResources.Designer.cs @@ -0,0 +1,81 @@ +//------------------------------------------------------------------------------ +// +// Dieser Code wurde von einem Tool generiert. +// Laufzeitversion:4.0.30319.42000 +// +// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +// der Code erneut generiert wird. +// +//------------------------------------------------------------------------------ + +namespace Eugen.ESystem.IO.Properties { + using System; + + + /// + /// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + /// + // Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert + // -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert. + // Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen + // mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")] + [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + internal class AppResources { + + private static global::System.Resources.ResourceManager resourceMan; + + private static global::System.Globalization.CultureInfo resourceCulture; + + [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")] + internal AppResources() { + } + + /// + /// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + /// + [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("Eugen.ESystem.IO.Properties.AppResources", typeof(AppResources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + /// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + /// + [global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)] + internal static global::System.Globalization.CultureInfo Culture { + get { + return resourceCulture; + } + set { + resourceCulture = value; + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die Information ähnelt. + /// + internal static string msgBoxCapt001 { + get { + return ResourceManager.GetString("msgBoxCapt001", resourceCulture); + } + } + + /// + /// Sucht eine lokalisierte Zeichenfolge, die The file was saved successfully. ähnelt. + /// + internal static string msgBoxTxt001 { + get { + return ResourceManager.GetString("msgBoxTxt001", resourceCulture); + } + } + } +} diff --git a/SaveXMLFile/Properties/AppResources.de.resx b/SaveXMLFile/Properties/AppResources.de.resx new file mode 100644 index 0000000..2d52f6c --- /dev/null +++ b/SaveXMLFile/Properties/AppResources.de.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 + + + Information + + + Die Datei wurde erfolgreich gespeichert. + + \ No newline at end of file diff --git a/SaveXMLFile/Properties/AppResources.en.resx b/SaveXMLFile/Properties/AppResources.en.resx new file mode 100644 index 0000000..f3e394d --- /dev/null +++ b/SaveXMLFile/Properties/AppResources.en.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 + + + Information + + + The file was saved successfully. + + \ No newline at end of file diff --git a/SaveXMLFile/Properties/AppResources.resx b/SaveXMLFile/Properties/AppResources.resx new file mode 100644 index 0000000..f3e394d --- /dev/null +++ b/SaveXMLFile/Properties/AppResources.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 + + + Information + + + The file was saved successfully. + + \ No newline at end of file diff --git a/SaveXMLFile/Properties/AssemblyInfo.cs b/SaveXMLFile/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..5f150f8 --- /dev/null +++ b/SaveXMLFile/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// Allgemeine Informationen über eine Assembly werden über die folgenden +// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern, +// die einer Assembly zugeordnet sind. +[assembly: AssemblyTitle("SaveXMLFile")] +[assembly: AssemblyDescription("Saves elements in a XML file")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("SaveXMLFile")] +[assembly: AssemblyCopyright("Copyright © 2022 by Eugen Höglinger")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly +// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von +// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen. +[assembly: ComVisible(false)] + +// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird +[assembly: Guid("875729b3-8de0-40ce-9fe0-bd98f1dba463")] + +// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten: +// +// Hauptversion +// Nebenversion +// Buildnummer +// Revision +// +// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden, +// indem Sie "*" wie unten gezeigt eingeben: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.*")] +//[assembly: AssemblyFileVersion("1.0.0.0")] //Wenn auskommentiert, dann gleich wie AssemblyVersion! diff --git a/SaveXMLFile/SaveXMLFile.cs b/SaveXMLFile/SaveXMLFile.cs new file mode 100644 index 0000000..6a593fb --- /dev/null +++ b/SaveXMLFile/SaveXMLFile.cs @@ -0,0 +1,366 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Reflection; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; +using System.Xml.Linq; +using AppRes = Eugen.ESystem.IO.Properties.AppResources; + +namespace Eugen.ESystem.IO +{ + public class SaveXMLFile + { + #region Version und Copyright + // Version und Copyright + static string dllName = Path.GetFileNameWithoutExtension(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase); //Den Programmnamen auslesen + static string dllVersion = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString(); + static object[] attributes = Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCopyrightAttribute), false); + static string copyright = GenerateCopyright(); + + //Assembly Datum und Zeit + static DateTime value = AssemblyDateTime(); + static string date = value.ToShortDateString(); + static string time = value.ToLongTimeString(); + + private static DateTime AssemblyDateTime() + { + var version = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version; + var buildDateTime = new DateTime(2000, 1, 1).Add(new TimeSpan(TimeSpan.TicksPerDay * version.Build + TimeSpan.TicksPerSecond * 2 * version.Revision)); + //Tage seit dem 1. Januar 2000 und Sekunden seit Mitternacht, (multiplizier mit 2 ergibt das Original) + return buildDateTime; + } + + private static string CurrentYear() + { + DateTime dtn = DateTime.Now; + return dtn.Year.ToString(); + } + + private static string StartYear() + { + string startYear = ""; + if (((AssemblyCopyrightAttribute)attributes[0]).Copyright.Contains("Copyright © ")) + { + startYear = ((AssemblyCopyrightAttribute)attributes[0]).Copyright.Replace("Copyright © ", ""); + while (startYear.StartsWith(" ")) + { + startYear = startYear.Remove(0, 1); + } + + if (startYear.Contains("-")) + { + startYear = startYear.Remove(startYear.IndexOf("-")); + } + else + { + startYear = startYear.Remove(startYear.IndexOf(" ")); + } + return startYear; + } + else + { + DateTime dtn = DateTime.Now; + return dtn.Year.ToString(); + } + } + + private static string GenerateCopyright() + { + string startYear = StartYear(); + string currentYear = CurrentYear(); + + if (startYear == currentYear) + { + return ((AssemblyCopyrightAttribute)attributes[0]).Copyright; + } + else + { + string temp = ((AssemblyCopyrightAttribute)attributes[0]).Copyright; + string start = temp.Remove(temp.IndexOf(startYear) - 1); + string end = (temp.Remove(0, temp.IndexOf(" by"))); + + return String.Concat(start, " ", startYear, "-", currentYear, end); + } + } + #endregion + + #region DLL-Info + /// + /// Contains the name of the dll file. + /// + public static string DllName { private set; get; } + + /// + /// Contains the version of the dll file. + /// + public static string DllVersion { private set; get; } + + /// + /// Contains the copyright notice. + /// + public static string Copyright { private set; get; } + + /// + /// Contains the name-, version- and copyright-information of the dll file. + /// + public static string[] DllInfo { private set; get; } + + private static void SetDllInfo() + { + //Name, Version und Copyright setzen + DllName = dllName; + DllVersion = dllVersion; + Copyright = copyright; + + string[] dllInfo = new string[3]; + dllInfo[0] = dllName; + dllInfo[1] = dllVersion; + dllInfo[2] = copyright; + DllInfo = dllInfo; + } + + protected string ProgramName { private set; get; } + protected string ProgramVersion { private set; get; } + protected string ProgramCopyright { private set; get; } + #endregion + + static SaveXMLFile() + { + SetDllInfo(); + } + + public SaveXMLFile() + { + SetDllInfo(); + } + + public enum multigroupFile + { + No, + Yes + } + + public string FileName { get; set; } + public multigroupFile MultiGroupFile { get; set; } + public string Topic = ""; //z.B. "NX-Portal" + public string Group { get; set; } //z.B. "NX" + public string Key { get; set; } //z.B. "Key" + public string[] Values { get; set; } //z.B. "NX 1953" + public string[] Standard { get; set; } //"yes" oder "no" + public int StandardNr { get; set; } //z.B. "2" + + private void SaveSingleGroupFile() + { + //Namensraum definieren + XNamespace ns = "https://www.engelglobal.com/de/at/index.html"; + + //Wurzelelement erzeugen + XElement rootElement = new XElement(ns + Topic); + + //Namensraum als Attribut angeben + rootElement.Add(new XAttribute("xmlns", ns)); + + //Der Wert + for (int id = 0; id < Values.Length; id++) + { + XElement groupElement = new XElement(ns + Group); + groupElement.Add(new XAttribute("Id", id + 1)); + groupElement.Add(new XAttribute(Key, Values[id])); + if (StandardNr == id + 1) + { + groupElement.Add(new XAttribute("Standard", "yes")); + } + else + { + groupElement.Add(new XAttribute("Standard", "no")); + } + + rootElement.Add(groupElement); + } + + rootElement.Save(FileName); + + MessageBox.Show(AppRes.msgBoxTxt001, AppRes.msgBoxCapt001, MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + private void SaveMultiGroupFile(string[,] values) + { + //Namensraum definieren + XNamespace ns = "https://www.engelglobal.com/de/at/index.html"; + + //Wurzelelement erzeugen + XElement rootElement = new XElement(ns + Topic); + + //Namensraum als Attribut angeben + rootElement.Add(new XAttribute("xmlns", ns)); + + //Der Wert + for (int id = 0; id < values.Length / 5; id++) + { + XElement groupElement = new XElement(ns + values[id, 0]); + groupElement.Add(new XAttribute("Id", values[id, 1])); + groupElement.Add(new XAttribute(values[id, 2], values[id, 3])); + groupElement.Add(new XAttribute("Standard", values[id, 4])); + + rootElement.Add(groupElement); + } + + rootElement.Save(FileName); + + MessageBox.Show(AppRes.msgBoxTxt001, AppRes.msgBoxCapt001, MessageBoxButtons.OK, MessageBoxIcon.Information); + } + + public void Save() + { + if (MultiGroupFile == multigroupFile.Yes) + { + //XML in collecton laden + var loadXML = new LoadXMLFile(); + loadXML.FileName = FileName; + loadXML.Topic = Topic; + loadXML.Group = Group; + loadXML.Key = Key; + loadXML.LoadAllValues = LoadXMLFile.LoadAll.Yes; + loadXML.Load(); + string[,] collection = loadXML.Values; + + bool exist = false; + if (loadXML.Values != null) + { + List> lafter = new List>(); + List> lmiddle = new List>(); + List> lbefore = new List>(); + + for (int i = 0; i < loadXML.Values.Length / 5; i++) + { + if (loadXML.Values[i, 0] == Group) + { + exist = true; + //Die alten Werte igrorieren, weil diese durch die neuen Werte ersetzt und nachher in die 'Gruppe_mitte' aufgenommen werden + } + else + { + if (exist) + { + //Die Werte in die 'Gruppe_danach' aufnehmen + List iafter = new List(); + + iafter.Add(loadXML.Values[i, 0]); + iafter.Add(loadXML.Values[i, 1]); + iafter.Add(loadXML.Values[i, 2]); + iafter.Add(loadXML.Values[i, 3]); + iafter.Add(loadXML.Values[i, 4]); + + lafter.Add(iafter); + } + else + { + //Die Werte in die 'Gruppe_davor' aufnehmen + List ibefore = new List(); + + ibefore.Add(loadXML.Values[i, 0]); + ibefore.Add(loadXML.Values[i, 1]); + ibefore.Add(loadXML.Values[i, 2]); + ibefore.Add(loadXML.Values[i, 3]); + ibefore.Add(loadXML.Values[i, 4]); + + lbefore.Add(ibefore); + } + } + } + + //Die Werte in die 'Gruppe_mitte' aufnehmen + for (int j = 0; j < Values.Length; j++) + { + List imiddle = new List(); + + imiddle.Add(Group); //z.B.: 'NX' + imiddle.Add((j + 1).ToString()); //Id, z.B.: '2' + imiddle.Add(Key); //z.B.: 'Version' + imiddle.Add(Values[j]); //z.B.: 'NX 2312' + imiddle.Add(Standard[j]); //Standard, z.B.: 'yes' + + lmiddle.Add(imiddle); + } + + //Gruppe_davor + Gruppe_mitte + Gruppe_danach + + //Gesamtlänge ermitteln + int cbefore = lbefore.Count; + int cmiddle = lmiddle.Count; + int cafter = lafter.Count; + string[,] values = new string[lbefore.Count + cmiddle + lafter.Count, 5]; + + //'Gruppe_davor' einfügen + if (lbefore.Count > 0) + { + for (int i = 0; i < lbefore.Count; i++) + { + int j = 0; + foreach (var item in lbefore[i]) + { + values[i, j] = item; + j++; + } + } + } + + //TODO: + //'Gruppe_mitte' einfügen + if (cmiddle > 0) + { + for (int i = lbefore.Count; i < lbefore.Count + cmiddle; i++) + { + int j = 0; + foreach (var item in lmiddle[i]) + { + values[i, j] = item; + j++; + } + } + } + + //'Gruppe_danach' einfügen + if (lafter.Count > 0) + { + int i = lbefore.Count + cmiddle; + foreach (var itema in lafter) + { + int j = 0; + foreach (var item in itema) + { + values[i, j] = item; + j++; + } + i++; + } + } + + //Speichern + SaveMultiGroupFile(values); + } + } + else + { + //Speichern + SaveSingleGroupFile(); + } + } + + private string[,] LoadXML() + { + var load = new LoadXMLFile(); + load.FileName = FileName; + load.Topic = Topic; + load.Group = Group; + load.Key = Key; + load.LoadAllValues = LoadXMLFile.LoadAll.Yes; //Es werden alle Elemente geladen + load.Load(); + + return load.Values; + } + } +} diff --git a/SaveXMLFile/SaveXMLFile.csproj b/SaveXMLFile/SaveXMLFile.csproj new file mode 100644 index 0000000..476dda1 --- /dev/null +++ b/SaveXMLFile/SaveXMLFile.csproj @@ -0,0 +1,66 @@ + + + + + Debug + AnyCPU + {875729B3-8DE0-40CE-9FE0-BD98F1DBA463} + Library + Properties + Eugen.ESystem.IO + hesaxmlf + v4.7.2 + 512 + false + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + False + ..\..\LoadXMLFile.git\LoadXMLFile\bin\Debug\heloxmlf.dll + + + + + + + + + + + + + + True + True + AppResources.resx + + + + + + + + + ResXFileCodeGenerator + AppResources.Designer.cs + + + + \ No newline at end of file diff --git a/SaveXMLFile/bin/Debug/de/hesaxmlf.resources.dll b/SaveXMLFile/bin/Debug/de/hesaxmlf.resources.dll new file mode 100644 index 0000000..20c313a Binary files /dev/null and b/SaveXMLFile/bin/Debug/de/hesaxmlf.resources.dll differ diff --git a/SaveXMLFile/bin/Debug/en/hesaxmlf.resources.dll b/SaveXMLFile/bin/Debug/en/hesaxmlf.resources.dll new file mode 100644 index 0000000..52f170f Binary files /dev/null and b/SaveXMLFile/bin/Debug/en/hesaxmlf.resources.dll differ diff --git a/SaveXMLFile/bin/Debug/heloxmlf.dll b/SaveXMLFile/bin/Debug/heloxmlf.dll new file mode 100644 index 0000000..0644e58 Binary files /dev/null and b/SaveXMLFile/bin/Debug/heloxmlf.dll differ diff --git a/SaveXMLFile/bin/Debug/heloxmlf.dll.config b/SaveXMLFile/bin/Debug/heloxmlf.dll.config new file mode 100644 index 0000000..56efbc7 --- /dev/null +++ b/SaveXMLFile/bin/Debug/heloxmlf.dll.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/SaveXMLFile/bin/Debug/heloxmlf.pdb b/SaveXMLFile/bin/Debug/heloxmlf.pdb new file mode 100644 index 0000000..9d0a800 Binary files /dev/null and b/SaveXMLFile/bin/Debug/heloxmlf.pdb differ diff --git a/SaveXMLFile/bin/Debug/hesaxmlf.dll b/SaveXMLFile/bin/Debug/hesaxmlf.dll new file mode 100644 index 0000000..2f44b4e Binary files /dev/null and b/SaveXMLFile/bin/Debug/hesaxmlf.dll differ diff --git a/SaveXMLFile/bin/Debug/hesaxmlf.pdb b/SaveXMLFile/bin/Debug/hesaxmlf.pdb new file mode 100644 index 0000000..348055d Binary files /dev/null and b/SaveXMLFile/bin/Debug/hesaxmlf.pdb differ diff --git a/SaveXMLFile/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs b/SaveXMLFile/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs new file mode 100644 index 0000000..3871b18 --- /dev/null +++ b/SaveXMLFile/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")] diff --git a/SaveXMLFile/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/SaveXMLFile/obj/Debug/DesignTimeResolveAssemblyReferences.cache new file mode 100644 index 0000000..99ef636 Binary files /dev/null and b/SaveXMLFile/obj/Debug/DesignTimeResolveAssemblyReferences.cache differ diff --git a/SaveXMLFile/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/SaveXMLFile/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..4bdd829 Binary files /dev/null and b/SaveXMLFile/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/SaveXMLFile/obj/Debug/Eugen.ESystem.IO.Properties.AppResources.de.resources b/SaveXMLFile/obj/Debug/Eugen.ESystem.IO.Properties.AppResources.de.resources new file mode 100644 index 0000000..b47b945 Binary files /dev/null and b/SaveXMLFile/obj/Debug/Eugen.ESystem.IO.Properties.AppResources.de.resources differ diff --git a/SaveXMLFile/obj/Debug/Eugen.ESystem.IO.Properties.AppResources.en.resources b/SaveXMLFile/obj/Debug/Eugen.ESystem.IO.Properties.AppResources.en.resources new file mode 100644 index 0000000..b60794a Binary files /dev/null and b/SaveXMLFile/obj/Debug/Eugen.ESystem.IO.Properties.AppResources.en.resources differ diff --git a/SaveXMLFile/obj/Debug/Eugen.ESystem.IO.Properties.AppResources.resources b/SaveXMLFile/obj/Debug/Eugen.ESystem.IO.Properties.AppResources.resources new file mode 100644 index 0000000..b60794a Binary files /dev/null and b/SaveXMLFile/obj/Debug/Eugen.ESystem.IO.Properties.AppResources.resources differ diff --git a/SaveXMLFile/obj/Debug/SaveXMLFile.csproj.AssemblyReference.cache b/SaveXMLFile/obj/Debug/SaveXMLFile.csproj.AssemblyReference.cache new file mode 100644 index 0000000..1cccf98 Binary files /dev/null and b/SaveXMLFile/obj/Debug/SaveXMLFile.csproj.AssemblyReference.cache differ diff --git a/SaveXMLFile/obj/Debug/SaveXMLFile.csproj.CopyComplete b/SaveXMLFile/obj/Debug/SaveXMLFile.csproj.CopyComplete new file mode 100644 index 0000000..e69de29 diff --git a/SaveXMLFile/obj/Debug/SaveXMLFile.csproj.CoreCompileInputs.cache b/SaveXMLFile/obj/Debug/SaveXMLFile.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..dbdbd54 --- /dev/null +++ b/SaveXMLFile/obj/Debug/SaveXMLFile.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +06a02b4b6148b9e1414dee0cd453bb4aeeb79a4a diff --git a/SaveXMLFile/obj/Debug/SaveXMLFile.csproj.FileListAbsolute.txt b/SaveXMLFile/obj/Debug/SaveXMLFile.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..5f2921c --- /dev/null +++ b/SaveXMLFile/obj/Debug/SaveXMLFile.csproj.FileListAbsolute.txt @@ -0,0 +1,18 @@ +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\bin\Debug\hesaxmlf.dll +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\bin\Debug\hesaxmlf.pdb +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\bin\Debug\de\hesaxmlf.resources.dll +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\bin\Debug\en\hesaxmlf.resources.dll +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\bin\Debug\heloxmlf.dll +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\bin\Debug\heloxmlf.pdb +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\bin\Debug\heloxmlf.dll.config +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\obj\Debug\SaveXMLFile.csproj.AssemblyReference.cache +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\obj\Debug\Eugen.ESystem.IO.Properties.AppResources.resources +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\obj\Debug\Eugen.ESystem.IO.Properties.AppResources.de.resources +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\obj\Debug\Eugen.ESystem.IO.Properties.AppResources.en.resources +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\obj\Debug\SaveXMLFile.csproj.GenerateResource.cache +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\obj\Debug\SaveXMLFile.csproj.CoreCompileInputs.cache +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\obj\Debug\de\hesaxmlf.resources.dll +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\obj\Debug\en\hesaxmlf.resources.dll +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\obj\Debug\SaveXMLFile.csproj.CopyComplete +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\obj\Debug\hesaxmlf.dll +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\SaveXMLFile\obj\Debug\hesaxmlf.pdb diff --git a/SaveXMLFile/obj/Debug/SaveXMLFile.csproj.GenerateResource.cache b/SaveXMLFile/obj/Debug/SaveXMLFile.csproj.GenerateResource.cache new file mode 100644 index 0000000..d129beb Binary files /dev/null and b/SaveXMLFile/obj/Debug/SaveXMLFile.csproj.GenerateResource.cache differ diff --git a/SaveXMLFile/obj/Debug/TempPE/Properties.AppResources.Designer.cs.dll b/SaveXMLFile/obj/Debug/TempPE/Properties.AppResources.Designer.cs.dll new file mode 100644 index 0000000..7b98da4 Binary files /dev/null and b/SaveXMLFile/obj/Debug/TempPE/Properties.AppResources.Designer.cs.dll differ diff --git a/SaveXMLFile/obj/Debug/_IsIncrementalBuild b/SaveXMLFile/obj/Debug/_IsIncrementalBuild new file mode 100644 index 0000000..e5f828c --- /dev/null +++ b/SaveXMLFile/obj/Debug/_IsIncrementalBuild @@ -0,0 +1 @@ +obj\Debug\\_IsIncrementalBuild diff --git a/SaveXMLFile/obj/Debug/de/hesaxmlf.resources.dll b/SaveXMLFile/obj/Debug/de/hesaxmlf.resources.dll new file mode 100644 index 0000000..20c313a Binary files /dev/null and b/SaveXMLFile/obj/Debug/de/hesaxmlf.resources.dll differ diff --git a/SaveXMLFile/obj/Debug/en/hesaxmlf.resources.dll b/SaveXMLFile/obj/Debug/en/hesaxmlf.resources.dll new file mode 100644 index 0000000..52f170f Binary files /dev/null and b/SaveXMLFile/obj/Debug/en/hesaxmlf.resources.dll differ diff --git a/SaveXMLFile/obj/Debug/hesaxmlf.dll b/SaveXMLFile/obj/Debug/hesaxmlf.dll new file mode 100644 index 0000000..2f44b4e Binary files /dev/null and b/SaveXMLFile/obj/Debug/hesaxmlf.dll differ diff --git a/SaveXMLFile/obj/Debug/hesaxmlf.pdb b/SaveXMLFile/obj/Debug/hesaxmlf.pdb new file mode 100644 index 0000000..348055d Binary files /dev/null and b/SaveXMLFile/obj/Debug/hesaxmlf.pdb differ diff --git a/Test_SaveXMLFile/App.config b/Test_SaveXMLFile/App.config new file mode 100644 index 0000000..ecdcf8a --- /dev/null +++ b/Test_SaveXMLFile/App.config @@ -0,0 +1,6 @@ + + + + + + diff --git a/Test_SaveXMLFile/Form1.Designer.cs b/Test_SaveXMLFile/Form1.Designer.cs new file mode 100644 index 0000000..1a65b58 --- /dev/null +++ b/Test_SaveXMLFile/Form1.Designer.cs @@ -0,0 +1,118 @@ +namespace Test_SaveXMLFile +{ + partial class Form1 + { + /// + /// Erforderliche Designervariable. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// Verwendete Ressourcen bereinigen. + /// + /// True, wenn verwaltete Ressourcen gelöscht werden sollen; andernfalls False. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region Vom Windows Form-Designer generierter Code + + /// + /// Erforderliche Methode für die Designerunterstützung. + /// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden. + /// + private void InitializeComponent() + { + this.buttonShowInfo = new System.Windows.Forms.Button(); + this.groupBoxProgramInfo = new System.Windows.Forms.GroupBox(); + this.labelProgramInfo = new System.Windows.Forms.Label(); + this.groupBoxDLLInfo = new System.Windows.Forms.GroupBox(); + this.labelDLLInfo = new System.Windows.Forms.Label(); + this.groupBoxProgramInfo.SuspendLayout(); + this.groupBoxDLLInfo.SuspendLayout(); + this.SuspendLayout(); + // + // buttonShowInfo + // + this.buttonShowInfo.Location = new System.Drawing.Point(12, 287); + this.buttonShowInfo.Name = "buttonShowInfo"; + this.buttonShowInfo.Size = new System.Drawing.Size(776, 23); + this.buttonShowInfo.TabIndex = 0; + this.buttonShowInfo.Text = "Start"; + this.buttonShowInfo.UseVisualStyleBackColor = true; + this.buttonShowInfo.Click += new System.EventHandler(this.buttonShowInfo_Click); + // + // groupBoxProgramInfo + // + this.groupBoxProgramInfo.Controls.Add(this.labelProgramInfo); + this.groupBoxProgramInfo.Location = new System.Drawing.Point(12, 372); + this.groupBoxProgramInfo.Name = "groupBoxProgramInfo"; + this.groupBoxProgramInfo.Size = new System.Drawing.Size(385, 66); + this.groupBoxProgramInfo.TabIndex = 11; + this.groupBoxProgramInfo.TabStop = false; + this.groupBoxProgramInfo.Text = "Programm Information"; + // + // labelProgramInfo + // + this.labelProgramInfo.AutoSize = true; + this.labelProgramInfo.ImeMode = System.Windows.Forms.ImeMode.NoControl; + this.labelProgramInfo.Location = new System.Drawing.Point(7, 20); + this.labelProgramInfo.Name = "labelProgramInfo"; + this.labelProgramInfo.Size = new System.Drawing.Size(16, 13); + this.labelProgramInfo.TabIndex = 0; + this.labelProgramInfo.Text = "..."; + // + // groupBoxDLLInfo + // + this.groupBoxDLLInfo.Controls.Add(this.labelDLLInfo); + this.groupBoxDLLInfo.Location = new System.Drawing.Point(403, 372); + this.groupBoxDLLInfo.Name = "groupBoxDLLInfo"; + this.groupBoxDLLInfo.Size = new System.Drawing.Size(385, 66); + this.groupBoxDLLInfo.TabIndex = 12; + this.groupBoxDLLInfo.TabStop = false; + this.groupBoxDLLInfo.Text = "DLL Information"; + // + // labelDLLInfo + // + this.labelDLLInfo.AutoSize = true; + this.labelDLLInfo.ImeMode = System.Windows.Forms.ImeMode.NoControl; + this.labelDLLInfo.Location = new System.Drawing.Point(7, 20); + this.labelDLLInfo.Name = "labelDLLInfo"; + this.labelDLLInfo.Size = new System.Drawing.Size(16, 13); + this.labelDLLInfo.TabIndex = 0; + this.labelDLLInfo.Text = "..."; + // + // 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.groupBoxProgramInfo); + this.Controls.Add(this.groupBoxDLLInfo); + this.Controls.Add(this.buttonShowInfo); + this.Name = "Form1"; + this.Text = "Test_InfoBox"; + this.Load += new System.EventHandler(this.Form1_Load); + this.groupBoxProgramInfo.ResumeLayout(false); + this.groupBoxProgramInfo.PerformLayout(); + this.groupBoxDLLInfo.ResumeLayout(false); + this.groupBoxDLLInfo.PerformLayout(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.Button buttonShowInfo; + private System.Windows.Forms.GroupBox groupBoxProgramInfo; + private System.Windows.Forms.Label labelProgramInfo; + private System.Windows.Forms.GroupBox groupBoxDLLInfo; + private System.Windows.Forms.Label labelDLLInfo; + } +} + diff --git a/Test_SaveXMLFile/Form1.cs b/Test_SaveXMLFile/Form1.cs new file mode 100644 index 0000000..09ff23f --- /dev/null +++ b/Test_SaveXMLFile/Form1.cs @@ -0,0 +1,152 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.IO; +using System.Linq; +using System.Reflection; +using System.Text; +using System.Threading.Tasks; +using System.Windows.Forms; +using Eugen.ESystem.IO; +using static System.Net.Mime.MediaTypeNames; + +namespace Test_SaveXMLFile +{ + public partial class Form1 : Form + { + #region Version und Copyright + // Version und Copyright + string programName = Path.GetFileNameWithoutExtension(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase); //Den Programmnamen auslesen + string programVersion = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString(); + static object[] attributes = System.Reflection.Assembly.GetExecutingAssembly().GetCustomAttributes(typeof(AssemblyCopyrightAttribute), false); + string copyright = GenerateCopyright(); + string icon = System.Windows.Forms.Application.StartupPath + "\\Info.bmp"; + //Assembly Datum und Zeit + static DateTime value = AssemblyDateTime(); + string date = value.ToShortDateString(); + string time = value.ToLongTimeString(); + private static DateTime AssemblyDateTime() + { + var version = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version; + var buildDateTime = new DateTime(2000, 1, 1).Add(new TimeSpan(TimeSpan.TicksPerDay * version.Build + TimeSpan.TicksPerSecond * 2 * version.Revision)); + //Tage seit dem 1. Januar 2000 und Sekunden seit Mitternacht, (multiplizier mit 2 ergibt das Original) + return buildDateTime; + } + + private static string CurrentYear() + { + DateTime dtn = DateTime.Now; + return dtn.Year.ToString(); + } + + private static string StartYear() + { + //string startYear = ((AssemblyCopyrightAttribute)attributes[0]).Copyright; + //return startYear.Remove(0, startYear.LastIndexOf(" ") + 1); + string startYear = ""; + if (((AssemblyCopyrightAttribute)attributes[0]).Copyright.Contains("Copyright © ")) + { + startYear = ((AssemblyCopyrightAttribute)attributes[0]).Copyright.Replace("Copyright © ", ""); + while (startYear.StartsWith(" ")) + { + startYear = startYear.Remove(0, 1); + } + startYear = startYear.Remove(startYear.IndexOf(" ")); + return startYear; + } + else + { + DateTime dtn = DateTime.Now; + return dtn.Year.ToString(); + } + } + + private static string GenerateCopyright() + { + string startYear = StartYear(); + string currentYear = CurrentYear(); + + if (startYear == currentYear) + { + return ((AssemblyCopyrightAttribute)attributes[0]).Copyright; + } + else + { + //return String.Concat(((AssemblyCopyrightAttribute)attributes[0]).Copyright, "-", currentYear); + return ((AssemblyCopyrightAttribute)attributes[0]).Copyright.Replace(startYear, String.Concat(startYear, "-", currentYear)); + } + } + #endregion + + #region Programm-Info + /// + /// Contains the name of the program file + /// + public static string ProgramName { set; get; } + + /// + /// Contains the version of the program file + /// + public static string ProgramVersion { set; get; } + + /// + /// Contains the copyright notice + /// + public static string Copyright { set; get; } + + private void SetProgramInfo() + { + //Name, Version und Copyright setzen + ProgramName = programName; + ProgramVersion = programVersion; + Copyright = copyright; + } + #endregion + + public Form1() + { + SetProgramInfo(); + InitializeComponent(); + } + + private void Form1_Load(object sender, EventArgs e) + { + labelProgramInfo.Text = String.Concat(ProgramName, "\r\n", ProgramVersion, "\r\n", Copyright); // Zeigt die Programm-Information an + + labelDLLInfo.Text = String.Concat(SaveXMLFile.DllName, "\r\n", SaveXMLFile.DllVersion, "\r\n", SaveXMLFile.Copyright); // Zeigt die DLL-Information an + } + + private void buttonShowInfo_Click(object sender, EventArgs e) + { + // + // Diese Zeilen gehört in das Programm kopiert + // + // + string[,] newValues = new string[,] { { "NX 2306", "yes" }, { "NX 2312", "no" } }; //Die Werte die neu dazukommen oder ersetzt werden sollen + + var sxmlf = new SaveXMLFile(); + //Die Werte übergeben + sxmlf.FileName = @"H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Daten\Test.xml"; + sxmlf.MultiGroupFile = SaveXMLFile.multigroupFile.Yes; + sxmlf.Topic = "NX-Portal"; + sxmlf.Group = "NX"; + sxmlf.Key = "Version"; + string[] tempValue = new string[newValues.Length / 2]; + string[] tempStandard = new string[newValues.Length / 2]; + for (int i = 0; i < newValues.Length / 2; i++) + { + tempValue[i] = newValues[i, 0]; + tempStandard[i] = newValues[i, 1]; + } + sxmlf.Values = tempValue; + sxmlf.Standard = tempStandard; + sxmlf.StandardNr = 1; + + sxmlf.Save(); //Speichern + // + // + } + } +} diff --git a/Test_SaveXMLFile/Form1.resx b/Test_SaveXMLFile/Form1.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/Test_SaveXMLFile/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/Test_SaveXMLFile/Program.cs b/Test_SaveXMLFile/Program.cs new file mode 100644 index 0000000..6dcf022 --- /dev/null +++ b/Test_SaveXMLFile/Program.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using System.Windows.Forms; + +namespace Test_SaveXMLFile +{ + internal static class Program + { + /// + /// Der Haupteinstiegspunkt für die Anwendung. + /// + [STAThread] + static void Main() + { + Application.EnableVisualStyles(); + Application.SetCompatibleTextRenderingDefault(false); + Application.Run(new Form1()); + } + } +} diff --git a/Test_SaveXMLFile/Properties/AssemblyInfo.cs b/Test_SaveXMLFile/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..c980ef9 --- /dev/null +++ b/Test_SaveXMLFile/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// Allgemeine Informationen über eine Assembly werden über die folgenden +// Attribute gesteuert. Ändern Sie diese Attributwerte, um die Informationen zu ändern, +// die einer Assembly zugeordnet sind. +[assembly: AssemblyTitle("Test_SaveXMLFile")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("Test_SaveXMLFile")] +[assembly: AssemblyCopyright("Copyright © 2022 by Eugen Höglinger")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Durch Festlegen von ComVisible auf FALSE werden die Typen in dieser Assembly +// für COM-Komponenten unsichtbar. Wenn Sie auf einen Typ in dieser Assembly von +// COM aus zugreifen müssen, sollten Sie das ComVisible-Attribut für diesen Typ auf "True" festlegen. +[assembly: ComVisible(false)] + +// Die folgende GUID bestimmt die ID der Typbibliothek, wenn dieses Projekt für COM verfügbar gemacht wird +[assembly: Guid("34dca2b4-1b0f-461f-a937-47713c0481b6")] + +// Versionsinformationen für eine Assembly bestehen aus den folgenden vier Werten: +// +// Hauptversion +// Nebenversion +// Buildnummer +// Revision +// +// Sie können alle Werte angeben oder Standardwerte für die Build- und Revisionsnummern verwenden, +// übernehmen, indem Sie "*" eingeben: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.*")] +//[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/Test_SaveXMLFile/Properties/Resources.Designer.cs b/Test_SaveXMLFile/Properties/Resources.Designer.cs new file mode 100644 index 0000000..66d7bf2 --- /dev/null +++ b/Test_SaveXMLFile/Properties/Resources.Designer.cs @@ -0,0 +1,63 @@ +//------------------------------------------------------------------------------ +// +// Dieser Code wurde von einem Tool generiert. +// Laufzeitversion:4.0.30319.42000 +// +// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +// der Code erneut generiert wird. +// +//------------------------------------------------------------------------------ + +namespace Test_SaveXMLFile.Properties { + using System; + + + /// + /// Eine stark typisierte Ressourcenklasse zum Suchen von lokalisierten Zeichenfolgen usw. + /// + // Diese Klasse wurde von der StronglyTypedResourceBuilder automatisch generiert + // -Klasse über ein Tool wie ResGen oder Visual Studio automatisch generiert. + // Um einen Member hinzuzufügen oder zu entfernen, bearbeiten Sie die .ResX-Datei und führen dann ResGen + // mit der /str-Option erneut aus, oder Sie erstellen Ihr VS-Projekt neu. + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.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() { + } + + /// + /// Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + /// + [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("Test_SaveXMLFile.Properties.Resources", typeof(Resources).Assembly); + resourceMan = temp; + } + return resourceMan; + } + } + + /// + /// Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + /// Ressourcenzuordnungen, die diese stark typisierte Ressourcenklasse verwenden. + /// + [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/Test_SaveXMLFile/Properties/Resources.resx b/Test_SaveXMLFile/Properties/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/Test_SaveXMLFile/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/Test_SaveXMLFile/Properties/Settings.Designer.cs b/Test_SaveXMLFile/Properties/Settings.Designer.cs new file mode 100644 index 0000000..abc3022 --- /dev/null +++ b/Test_SaveXMLFile/Properties/Settings.Designer.cs @@ -0,0 +1,26 @@ +//------------------------------------------------------------------------------ +// +// Dieser Code wurde von einem Tool generiert. +// Laufzeitversion:4.0.30319.42000 +// +// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn +// der Code erneut generiert wird. +// +//------------------------------------------------------------------------------ + +namespace Test_SaveXMLFile.Properties { + + + [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.4.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/Test_SaveXMLFile/Properties/Settings.settings b/Test_SaveXMLFile/Properties/Settings.settings new file mode 100644 index 0000000..3964565 --- /dev/null +++ b/Test_SaveXMLFile/Properties/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/Test_SaveXMLFile/Test_SaveXMLFile.csproj b/Test_SaveXMLFile/Test_SaveXMLFile.csproj new file mode 100644 index 0000000..4dd39fe --- /dev/null +++ b/Test_SaveXMLFile/Test_SaveXMLFile.csproj @@ -0,0 +1,89 @@ + + + + + Debug + AnyCPU + {34DCA2B4-1B0F-461F-A937-47713C0481B6} + WinExe + Test_SaveXMLFile + Test_SaveXMLFile + v4.7.2 + 512 + true + false + + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + False + ..\SaveXMLFile\bin\Debug\hesaxmlf.dll + + + + + + + + + + + + + + + + Form + + + Form1.cs + + + + + Form1.cs + + + ResXFileCodeGenerator + Resources.Designer.cs + Designer + + + True + Resources.resx + True + + + SettingsSingleFileGenerator + Settings.Designer.cs + + + True + Settings.settings + True + + + + + + + \ No newline at end of file diff --git a/Test_SaveXMLFile/bin/Debug/Test_SaveXMLFile.exe b/Test_SaveXMLFile/bin/Debug/Test_SaveXMLFile.exe new file mode 100644 index 0000000..bd2070c Binary files /dev/null and b/Test_SaveXMLFile/bin/Debug/Test_SaveXMLFile.exe differ diff --git a/Test_SaveXMLFile/bin/Debug/Test_SaveXMLFile.exe.config b/Test_SaveXMLFile/bin/Debug/Test_SaveXMLFile.exe.config new file mode 100644 index 0000000..ecdcf8a --- /dev/null +++ b/Test_SaveXMLFile/bin/Debug/Test_SaveXMLFile.exe.config @@ -0,0 +1,6 @@ + + + + + + diff --git a/Test_SaveXMLFile/bin/Debug/Test_SaveXMLFile.pdb b/Test_SaveXMLFile/bin/Debug/Test_SaveXMLFile.pdb new file mode 100644 index 0000000..358eac0 Binary files /dev/null and b/Test_SaveXMLFile/bin/Debug/Test_SaveXMLFile.pdb differ diff --git a/Test_SaveXMLFile/bin/Debug/de/hesaxmlf.resources.dll b/Test_SaveXMLFile/bin/Debug/de/hesaxmlf.resources.dll new file mode 100644 index 0000000..70f21fb Binary files /dev/null and b/Test_SaveXMLFile/bin/Debug/de/hesaxmlf.resources.dll differ diff --git a/Test_SaveXMLFile/bin/Debug/en/hesaxmlf.resources.dll b/Test_SaveXMLFile/bin/Debug/en/hesaxmlf.resources.dll new file mode 100644 index 0000000..e8a4f4a Binary files /dev/null and b/Test_SaveXMLFile/bin/Debug/en/hesaxmlf.resources.dll differ diff --git a/Test_SaveXMLFile/bin/Debug/heloxmlf.dll b/Test_SaveXMLFile/bin/Debug/heloxmlf.dll new file mode 100644 index 0000000..0644e58 Binary files /dev/null and b/Test_SaveXMLFile/bin/Debug/heloxmlf.dll differ diff --git a/Test_SaveXMLFile/bin/Debug/heloxmlf.dll.config b/Test_SaveXMLFile/bin/Debug/heloxmlf.dll.config new file mode 100644 index 0000000..56efbc7 --- /dev/null +++ b/Test_SaveXMLFile/bin/Debug/heloxmlf.dll.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Test_SaveXMLFile/bin/Debug/heloxmlf.pdb b/Test_SaveXMLFile/bin/Debug/heloxmlf.pdb new file mode 100644 index 0000000..9d0a800 Binary files /dev/null and b/Test_SaveXMLFile/bin/Debug/heloxmlf.pdb differ diff --git a/Test_SaveXMLFile/bin/Debug/hesaxmlf.dll b/Test_SaveXMLFile/bin/Debug/hesaxmlf.dll new file mode 100644 index 0000000..6ed6f2c Binary files /dev/null and b/Test_SaveXMLFile/bin/Debug/hesaxmlf.dll differ diff --git a/Test_SaveXMLFile/bin/Debug/hesaxmlf.pdb b/Test_SaveXMLFile/bin/Debug/hesaxmlf.pdb new file mode 100644 index 0000000..953b01a Binary files /dev/null and b/Test_SaveXMLFile/bin/Debug/hesaxmlf.pdb differ diff --git a/Test_SaveXMLFile/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs b/Test_SaveXMLFile/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs new file mode 100644 index 0000000..3871b18 --- /dev/null +++ b/Test_SaveXMLFile/obj/Debug/.NETFramework,Version=v4.7.2.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")] diff --git a/Test_SaveXMLFile/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/Test_SaveXMLFile/obj/Debug/DesignTimeResolveAssemblyReferences.cache new file mode 100644 index 0000000..83e6107 Binary files /dev/null and b/Test_SaveXMLFile/obj/Debug/DesignTimeResolveAssemblyReferences.cache differ diff --git a/Test_SaveXMLFile/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/Test_SaveXMLFile/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000..01de298 Binary files /dev/null and b/Test_SaveXMLFile/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ diff --git a/Test_SaveXMLFile/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll b/Test_SaveXMLFile/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll new file mode 100644 index 0000000..8fdc513 Binary files /dev/null and b/Test_SaveXMLFile/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll differ diff --git a/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.Form1.resources b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.Form1.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.Form1.resources differ diff --git a/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.Properties.Resources.resources b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.Properties.Resources.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.Properties.Resources.resources differ diff --git a/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.csproj.AssemblyReference.cache b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.csproj.AssemblyReference.cache new file mode 100644 index 0000000..9d621c3 Binary files /dev/null and b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.csproj.AssemblyReference.cache differ diff --git a/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.csproj.CopyComplete b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.csproj.CopyComplete new file mode 100644 index 0000000..e69de29 diff --git a/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.csproj.CoreCompileInputs.cache b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..718fb8a --- /dev/null +++ b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +60ee57f9c6fbd377b8c16bc587932cb490f0cd22 diff --git a/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.csproj.FileListAbsolute.txt b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..c4e0325 --- /dev/null +++ b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.csproj.FileListAbsolute.txt @@ -0,0 +1,19 @@ +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\obj\Debug\Test_SaveXMLFile.csproj.AssemblyReference.cache +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\obj\Debug\Test_SaveXMLFile.csproj.SuggestedBindingRedirects.cache +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\obj\Debug\Test_SaveXMLFile.Form1.resources +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\obj\Debug\Test_SaveXMLFile.Properties.Resources.resources +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\obj\Debug\Test_SaveXMLFile.csproj.GenerateResource.cache +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\obj\Debug\Test_SaveXMLFile.csproj.CoreCompileInputs.cache +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\bin\Debug\Test_SaveXMLFile.exe.config +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\bin\Debug\Test_SaveXMLFile.exe +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\bin\Debug\Test_SaveXMLFile.pdb +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\bin\Debug\hesaxmlf.pdb +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\bin\Debug\de\hesaxmlf.resources.dll +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\bin\Debug\en\hesaxmlf.resources.dll +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\obj\Debug\Test_SaveXMLFile.csproj.CopyComplete +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\obj\Debug\Test_SaveXMLFile.exe +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\obj\Debug\Test_SaveXMLFile.pdb +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\bin\Debug\heloxmlf.dll +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\bin\Debug\heloxmlf.pdb +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\bin\Debug\heloxmlf.dll.config +H:\Programmieren\Git-WorkRepository\VisualStudio\_DLL\SaveXMLFile.git\Test_SaveXMLFile\bin\Debug\hesaxmlf.dll diff --git a/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.csproj.GenerateResource.cache b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.csproj.GenerateResource.cache new file mode 100644 index 0000000..0c2df84 Binary files /dev/null and b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.csproj.GenerateResource.cache differ diff --git a/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.csproj.SuggestedBindingRedirects.cache b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.csproj.SuggestedBindingRedirects.cache new file mode 100644 index 0000000..e69de29 diff --git a/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.exe b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.exe new file mode 100644 index 0000000..bd2070c Binary files /dev/null and b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.exe differ diff --git a/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.pdb b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.pdb new file mode 100644 index 0000000..358eac0 Binary files /dev/null and b/Test_SaveXMLFile/obj/Debug/Test_SaveXMLFile.pdb differ diff --git a/Test_SaveXMLFile/obj/Debug/_IsIncrementalBuild b/Test_SaveXMLFile/obj/Debug/_IsIncrementalBuild new file mode 100644 index 0000000..e5f828c --- /dev/null +++ b/Test_SaveXMLFile/obj/Debug/_IsIncrementalBuild @@ -0,0 +1 @@ +obj\Debug\\_IsIncrementalBuild