Änderung
- An NX Continous Release angepasst
This commit is contained in:
parent
ad2e268b8e
commit
d2a209c4b2
@ -44,107 +44,52 @@ namespace NxVersion
|
||||
|
||||
private void Start(string ugiiBaseDir)
|
||||
{
|
||||
ShowInfo(ugiiBaseDir);
|
||||
labelVerInfo.Text = "";
|
||||
|
||||
if (Directory.Exists(ugiiBaseDir))
|
||||
{
|
||||
ShowInfo(ugiiBaseDir);
|
||||
}
|
||||
else
|
||||
{
|
||||
labelVerInfo.Text = "ACHTUNG:\nDas angegebene NX Installationsverzeichnis ist ungültig!";
|
||||
}
|
||||
}
|
||||
|
||||
private void ShowInfo(string ugiiBaseDir)
|
||||
{
|
||||
try
|
||||
{
|
||||
var nxVersion = new NxVersion(ugiiBaseDir);
|
||||
NxVersion nxVer1 = new NxVersion(); //NX Version initialisieren
|
||||
NxVersion nxVer2 = nxVer1.GetNxVersion(ugiiBaseDir); //Informationen über diese Version (C:\\CAD\\NX10) abrufen
|
||||
|
||||
labelVerInfo.Text = String.Concat("UGII_BASE_DIR: ", ugiiBaseDir, "\n", "UGII_ROOT_DIR: ", UgiiRootDir, "\n\n");
|
||||
//Werte zuordnen
|
||||
string text = "";
|
||||
text += "UGII_BASE_DIR: " + ugiiBaseDir;
|
||||
text += "\nUGII_ROOT_DIR: " + ugiiBaseDir + "\\UGII\\\n";
|
||||
|
||||
if (nxVersion.PostNX12)
|
||||
text += "\nNX Version: " + nxVer2.NXversion;
|
||||
text += "\nMaintenance Release: " + nxVer2.MaintenanceRelease;
|
||||
text += "\nUGII_PRODUCT_NAME: " + nxVer2.UgiiProductName;
|
||||
text += "\nUGII_MAJOR_VERSION: " + nxVer2.UgiiMajorVersion;
|
||||
text += "\nUGII_MINOR_VERSION: " + nxVer2.UgiiMinorVersion;
|
||||
text += "\nUGII_SUBMINOR_VERSION: " + nxVer2.UgiiSubminorVersion;
|
||||
text += "\nNX Phase: " + nxVer2.NXphase;
|
||||
text += "\nMaintenance Pack: " + nxVer2.MaintenancePack;
|
||||
text += "\nMaintenance Pack Number: " + nxVer2.MaintenancePackNumber;
|
||||
text += "\nNX_VERSION_STRING: " + nxVer2.NxVersionString;
|
||||
text += "\nNX_MAJOR_STRING: " + nxVer2.NxMajorVersionString;
|
||||
text += "\nNX_MINOR_STRING: " + nxVer2.NxMinorVersionString;
|
||||
text += "\nNX_SUBMINOR_STRING: " + nxVer2.NxSubminorVersionString;
|
||||
text += "\nNX_PHASE_STRING: " + nxVer2.NxPhaseString;
|
||||
text += "\nUGII_FULL_VERSION: " + nxVer2.UgiiFullVersion;
|
||||
text += "\nUGII_VERSION: " + nxVer2.UgiiVersion;
|
||||
if (nxVer2.PostNX12)
|
||||
{
|
||||
//Nach NX12
|
||||
labelVerInfo.Text = String.Concat(labelVerInfo.Text, "Version: ", nxVersion.UgiiProductName, " ", nxVersion.UgiiMajorVersion, ".", nxVersion.UgiiMinorVersion);
|
||||
text += "\nNX_COMPATIBLE_BASE_RELEASE_VERSION: " + nxVer2.NxCompatibleBaseReleaseVersion;
|
||||
}
|
||||
else
|
||||
{
|
||||
//Vor NX
|
||||
labelVerInfo.Text = String.Concat(labelVerInfo.Text, "Version: ", nxVersion.UgiiProductName, " ", nxVersion.UgiiMajorVersion, ".", nxVersion.UgiiMinorVersion, ".", nxVersion.UgiiSubminorVersion, ".", nxVersion.NXphase, " ", nxVersion.MaintenancePack);
|
||||
}
|
||||
|
||||
labelVerInfo.Text = String.Concat(labelVerInfo.Text, "\nPostNX12: ", nxVersion.PostNX12.ToString());
|
||||
|
||||
var nxVersion1 = new NxVersion();
|
||||
nxVersion1.UgiiProductName = "NX";
|
||||
nxVersion1.UgiiMajorVersion = 1847;
|
||||
nxVersion1.UgiiMinorVersion = 2400;
|
||||
labelVerInfo.Text = String.Concat(labelVerInfo.Text, "\n\n\nVergleich mit NX 1847.2400 ergibt: ", nxVersion.Compare(nxVersion1));
|
||||
|
||||
var nxVersion2 = new NxVersion();
|
||||
nxVersion2.UgiiProductName = "NX";
|
||||
nxVersion2.UgiiMajorVersion = 1847;
|
||||
nxVersion2.UgiiMinorVersion = 1200;
|
||||
labelVerInfo.Text = String.Concat(labelVerInfo.Text, "\n\nVergleich mit NX 1847.1200 ergibt: ", nxVersion.Compare(nxVersion2));
|
||||
|
||||
var nxVersion3 = new NxVersion();
|
||||
nxVersion3.UgiiProductName = "NX";
|
||||
nxVersion3.UgiiMajorVersion = 1847;
|
||||
nxVersion3.UgiiMinorVersion = 4800;
|
||||
labelVerInfo.Text = String.Concat(labelVerInfo.Text, "\n\nVergleich mit NX 1847.4800 ergibt: ", nxVersion.Compare(nxVersion3));
|
||||
|
||||
var nxVersion4 = new NxVersion();
|
||||
nxVersion4.UgiiProductName = "NX";
|
||||
nxVersion4.UgiiMajorVersion = 10;
|
||||
nxVersion4.UgiiMinorVersion = 0;
|
||||
nxVersion4.UgiiSubminorVersion = 3;
|
||||
nxVersion4.NXphase = 5;
|
||||
nxVersion4.MaintenancePack = "MP10";
|
||||
labelVerInfo.Text = String.Concat(labelVerInfo.Text, "\n\nVergleich mit NX 10.0.3.5 MP10 ergibt: ", nxVersion.Compare(nxVersion4));
|
||||
|
||||
var nxVersion5 = new NxVersion();
|
||||
nxVersion5.UgiiProductName = "NX";
|
||||
nxVersion5.UgiiMajorVersion = 10;
|
||||
nxVersion5.UgiiMinorVersion = 0;
|
||||
nxVersion5.UgiiSubminorVersion = 3;
|
||||
nxVersion5.NXphase = 5;
|
||||
nxVersion5.MaintenancePack = "MP19";
|
||||
labelVerInfo.Text = String.Concat(labelVerInfo.Text, "\n\nVergleich mit NX 10.0.3.5 MP19 ergibt: ", nxVersion.Compare(nxVersion5));
|
||||
|
||||
var nxVersion6 = new NxVersion();
|
||||
nxVersion6.UgiiProductName = "NX";
|
||||
nxVersion6.UgiiMajorVersion = 10;
|
||||
nxVersion6.UgiiMinorVersion = 0;
|
||||
nxVersion6.UgiiSubminorVersion = 3;
|
||||
nxVersion6.NXphase = 6;
|
||||
nxVersion6.MaintenancePack = "MP19";
|
||||
labelVerInfo.Text = String.Concat(labelVerInfo.Text, "\n\nVergleich mit NX 10.0.3.6 MP19 ergibt: ", nxVersion.Compare(nxVersion6));
|
||||
|
||||
var nxVersion7 = new NxVersion();
|
||||
nxVersion7.UgiiProductName = "NX";
|
||||
nxVersion7.UgiiMajorVersion = 12;
|
||||
nxVersion7.UgiiMinorVersion = 4;
|
||||
nxVersion7.UgiiSubminorVersion = 2;
|
||||
nxVersion7.NXphase = 1;
|
||||
nxVersion7.MaintenancePack = "MP2";
|
||||
labelVerInfo.Text = String.Concat(labelVerInfo.Text, "\n\nVergleich mit NX 12.4.2.1 MP2 ergibt: ", nxVersion.Compare(nxVersion7));
|
||||
|
||||
var nxVersion8 = new NxVersion();
|
||||
nxVersion8.UgiiProductName = "NX";
|
||||
nxVersion8.UgiiMajorVersion = 12;
|
||||
nxVersion8.UgiiMinorVersion = 0;
|
||||
nxVersion8.UgiiSubminorVersion = 2;
|
||||
nxVersion8.NXphase = 9;
|
||||
nxVersion8.MaintenancePack = "MP5";
|
||||
labelVerInfo.Text = String.Concat(labelVerInfo.Text, "\n\nVergleich mit NX 12.0.2.9 MP5 ergibt: ", nxVersion.Compare(nxVersion8));
|
||||
|
||||
var nxVersion9 = new NxVersion();
|
||||
nxVersion9.UgiiProductName = "NX";
|
||||
nxVersion9.UgiiMajorVersion = 12;
|
||||
nxVersion9.UgiiMinorVersion = 4;
|
||||
nxVersion9.UgiiSubminorVersion = 2;
|
||||
nxVersion9.NXphase = 1;
|
||||
nxVersion9.MaintenancePack = "MP1";
|
||||
labelVerInfo.Text = String.Concat(labelVerInfo.Text, "\n\nVergleich mit NX 12.4.2.1 MP1 ergibt: ", nxVersion.Compare(nxVersion9));
|
||||
|
||||
var nxVersion10 = new NxVersion();
|
||||
labelVerInfo.Text = String.Concat(labelVerInfo.Text, "\n\nVergleich mit NX 10.0.3.5 MP19 ergibt: ", nxVersion.Compare("NX", 10, 0, 3, 5, 19));
|
||||
|
||||
var nxVersion11 = new NxVersion();
|
||||
labelVerInfo.Text = String.Concat(labelVerInfo.Text, "\n\nVergleich mit NX 12.0.2.9 MP5 ergibt: ", nxVersion.Compare("NX", 12, 0, 2, 9, 5));
|
||||
text += "\nPostNX12: " + nxVer2.PostNX12;
|
||||
labelVerInfo.Text = text; //Werte der installierten NX10 Version
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
@ -1,11 +1,54 @@
|
||||
using System;
|
||||
using System.Diagnostics;
|
||||
using System.IO;
|
||||
using System.Reflection;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace NxVersion
|
||||
{
|
||||
class NxVersion
|
||||
{
|
||||
public NxVersion()
|
||||
{
|
||||
}
|
||||
|
||||
public NxVersion(string ugiiBaseDir)
|
||||
{
|
||||
if (Directory.Exists(ugiiBaseDir))
|
||||
{
|
||||
UgiiBaseDir = ugiiBaseDir;
|
||||
UgiiRootDir = String.Concat(UgiiBaseDir, "\\UGII\\");
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new DirectoryNotFoundException();
|
||||
}
|
||||
|
||||
string nxVersionNo = ReadNxEnvValues(UgiiRootDir, "-n").Replace("\r\n", "");
|
||||
|
||||
if (Convert.ToInt32(ugiiBaseDir.ToLower().Remove(0, ugiiBaseDir.LastIndexOf("\\") + 3)) <= 12)
|
||||
{
|
||||
//Bis einschliesslich NX12
|
||||
string tempPatchText = ReadNxEnvValues(UgiiRootDir, "-m");
|
||||
tempPatchText = tempPatchText.Remove(tempPatchText.IndexOf(","));
|
||||
|
||||
string nxVerString = ReadNxEnvValues(ugiiBaseDir + "\\UGII\\", "-v");
|
||||
nxVerString = nxVerString.Remove(nxVerString.IndexOf("\r"));
|
||||
string nxCompBaseRelVer = ReadNxEnvValues(ugiiBaseDir + "\\UGII\\", "-f");
|
||||
if (!String.IsNullOrEmpty(nxCompBaseRelVer))
|
||||
{
|
||||
nxCompBaseRelVer = nxCompBaseRelVer.Remove(nxCompBaseRelVer.IndexOf("\r"));
|
||||
}
|
||||
|
||||
AlignCode(nxVersionNo, tempPatchText, nxVerString, nxCompBaseRelVer);
|
||||
}
|
||||
else
|
||||
{
|
||||
//Nach NX12
|
||||
AlignCode(nxVersionNo);
|
||||
}
|
||||
}
|
||||
|
||||
#region Base value
|
||||
/// <summary>
|
||||
/// UGII_BASE_DIR. E.g.: C:\Program Files\Siemens\NX 12.0
|
||||
@ -112,75 +155,19 @@ namespace NxVersion
|
||||
/// Maintenance Pack Number. E.g.: 4 of NX 10.0.3.5 MP4
|
||||
/// </summary>
|
||||
public int MaintenancePackNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// NX compatible base release version. E.g.: 1953 of 1973
|
||||
/// </summary>
|
||||
public string NxCompatibleBaseReleaseVersion { get; set; }
|
||||
#endregion
|
||||
|
||||
public NxVersion()
|
||||
{ }
|
||||
|
||||
public NxVersion(string ugiiBaseDir)
|
||||
{
|
||||
if (Directory.Exists(ugiiBaseDir))
|
||||
{
|
||||
UgiiBaseDir = ugiiBaseDir;
|
||||
UgiiRootDir = String.Concat(UgiiBaseDir, "\\UGII\\");
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new DirectoryNotFoundException();
|
||||
}
|
||||
|
||||
string nxVersionNo = ReadNxEnvValues(UgiiRootDir, "-n").Replace("\r\n", "");
|
||||
|
||||
if (IsPostNX12(UgiiRootDir))
|
||||
{
|
||||
//Nach NX12
|
||||
AlignCode(nxVersionNo);
|
||||
}
|
||||
else
|
||||
{
|
||||
//Bis einschliesslich NX12
|
||||
string tempPatchText = ReadNxEnvValues(UgiiRootDir, "-m");
|
||||
tempPatchText = tempPatchText.Remove(tempPatchText.IndexOf(","));
|
||||
|
||||
AlignCode(nxVersionNo, tempPatchText);
|
||||
}
|
||||
}
|
||||
|
||||
#region CommonMethodes
|
||||
private bool IsPostNX12(string ugiiRootDir)
|
||||
{
|
||||
if (NxVersionNumber(ugiiRootDir) <= 12)
|
||||
{
|
||||
//Bis einschliesslich NX12
|
||||
PostNX12 = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
//Nach NX12
|
||||
PostNX12 = true;
|
||||
}
|
||||
return PostNX12;
|
||||
}
|
||||
|
||||
private bool IsPostNX12(NxVersion version)
|
||||
{
|
||||
if (version.UgiiMajorVersion <= 12)
|
||||
{
|
||||
//Bis einschliesslich NX12
|
||||
PostNX12 = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
//Nach NX12
|
||||
PostNX12 = true;
|
||||
}
|
||||
return PostNX12;
|
||||
}
|
||||
#region Common Private Methodes
|
||||
|
||||
private int NxVersionNumber(string ugiiRootDir)
|
||||
{
|
||||
string nxVersion = ReadNxEnvValues(UgiiRootDir, "-n").Replace("\r\n", "");
|
||||
nxVersion = nxVersion.Remove(nxVersion.IndexOf(".")).Replace("NX ","");
|
||||
nxVersion = nxVersion.Remove(nxVersion.IndexOf(".")).Replace("NX ", "");
|
||||
return Convert.ToInt16(nxVersion);
|
||||
}
|
||||
|
||||
@ -205,7 +192,7 @@ namespace NxVersion
|
||||
ExecutablesExists(ugii_base_dir);
|
||||
|
||||
//Wenn 'ugii_base_dir' existiert, dann die Werte ermitteln}
|
||||
return ProcessOutput(ugii_base_dir, arguments);
|
||||
return ProcessOutput(String.Concat(ugii_base_dir, "\\UGII\\env_print.exe"), arguments);
|
||||
}
|
||||
|
||||
private void ExecutablesExists(string ugii_base_dir)
|
||||
@ -213,7 +200,7 @@ namespace NxVersion
|
||||
//Wenn eine der drei Dateien nicht existiert, dann eine Exception werfen
|
||||
if (!File.Exists(String.Concat(ugii_base_dir, "\\UGII\\env_print.exe"))) throw new NoEnvPrintExeException("Unable to find EnvPrint.exe");
|
||||
//Nur vor 'NX 1847' ausführen, weil es nur vorher diese Biblithek gibt
|
||||
if (!ugii_base_dir.ToLower().Contains("nx 1847") & !ugii_base_dir.ToLower().Contains("beta") & ugii_base_dir.Remove(0, ugii_base_dir.LastIndexOf("\\") + 1).Length != 2)
|
||||
if (Convert.ToInt32(ugii_base_dir.ToLower().Remove(0, ugii_base_dir.LastIndexOf("\\") + 3)) <= 12 & !ugii_base_dir.ToLower().Contains("beta") & ugii_base_dir.Remove(0, ugii_base_dir.LastIndexOf("\\") + 1).Length != 2)
|
||||
{
|
||||
if (!File.Exists(String.Concat(ugii_base_dir, "\\UGII\\libpatch.dll")) & !File.Exists(String.Concat(ugii_base_dir, "\\NXBIN\\libpatch.dll"))) throw new NoLibPatchDllException("Unable to find LibPatch.dll");
|
||||
}
|
||||
@ -264,7 +251,7 @@ namespace NxVersion
|
||||
UgiiMinorVersion = Convert.ToInt32(versionSegments[2]); //Minor Version
|
||||
}
|
||||
|
||||
private void AlignCode(string nxVersionNo, string tempPatchText)
|
||||
private void AlignCode(string nxVersionNo, string tempPatchText, string nxVerString, string nxCompBaseRelVer)
|
||||
{
|
||||
//NX Version zerlegen
|
||||
string[] versionSegments = new string[6];
|
||||
@ -279,23 +266,50 @@ namespace NxVersion
|
||||
versionSegments[5] = SeperatePatchText(tempPatchText);
|
||||
|
||||
//Werte zuordnen
|
||||
NXpatch = String.Concat(versionSegments[0], " ", versionSegments[1], ".", versionSegments[2], ".", versionSegments[3], ".", versionSegments[4], " ", versionSegments[5]); //NX Patch
|
||||
NXversion = String.Concat(versionSegments[0], " ", versionSegments[1], ".", versionSegments[2], ".", versionSegments[3], ".", versionSegments[4]); //NX Version
|
||||
MaintenanceRelease = String.Concat(versionSegments[1], ".", versionSegments[2], ".", versionSegments[3], ".", versionSegments[4]); //Maintenance Release
|
||||
UgiiProductName = versionSegments[0]; //Produkt Name
|
||||
UgiiMajorVersion = Convert.ToInt32(versionSegments[1]); //Major Version
|
||||
UgiiMinorVersion = Convert.ToInt32(versionSegments[2]); //Minor Version
|
||||
UgiiSubminorVersion = Convert.ToInt32(versionSegments[3]); //Subminor Version
|
||||
NXphase = Convert.ToInt32(versionSegments[4]); //NX Phase
|
||||
MaintenancePack = versionSegments[5]; //Maintenance Pack
|
||||
MaintenancePackNumber = Convert.ToInt32(versionSegments[5].Replace("MP", ""));
|
||||
NxVersionString = String.Concat("V", (Convert.ToInt32(versionSegments[1]) + 18).ToString(), ".", versionSegments[2], ".", versionSegments[3], ".", versionSegments[4]); //NX Version String
|
||||
NxMajorVersionString = String.Concat("V", (Convert.ToInt32(versionSegments[1]) + 18).ToString()); //Major Version String
|
||||
NxMinorVersionString = versionSegments[2].ToString(); //Minor Version String
|
||||
NxSubminorVersionString = versionSegments[3].ToString(); //Subminor Version String
|
||||
NxPhaseString = versionSegments[4].ToString(); //NX Phase String
|
||||
UgiiFullVersion = String.Concat("v", versionSegments[1], ".", versionSegments[2], ".", versionSegments[3], ".", versionSegments[4]); //NX Full Version
|
||||
UgiiVersion = String.Concat("v", versionSegments[1]);
|
||||
if (Convert.ToInt32(versionSegments[1]) <= 12)
|
||||
{
|
||||
NXpatch = String.Concat(versionSegments[0], " ", versionSegments[1], ".", versionSegments[2], ".", versionSegments[3], ".", versionSegments[4], " ", versionSegments[5]); //NX Patch
|
||||
NXversion = String.Concat(versionSegments[0], " ", versionSegments[1], ".", versionSegments[2], ".", versionSegments[3], ".", versionSegments[4]); //NX Version
|
||||
MaintenanceRelease = String.Concat(versionSegments[1], ".", versionSegments[2], ".", versionSegments[3], ".", versionSegments[4]); //Maintenance Release
|
||||
UgiiProductName = versionSegments[0]; //Produkt Name
|
||||
UgiiMajorVersion = Convert.ToInt32(versionSegments[1]); //Major Version
|
||||
UgiiMinorVersion = Convert.ToInt32(versionSegments[2]); //Minor Version
|
||||
UgiiSubminorVersion = Convert.ToInt32(versionSegments[3]); //Subminor Version
|
||||
NXphase = Convert.ToInt32(versionSegments[4]); //NX Phase
|
||||
MaintenancePack = versionSegments[5]; //Maintenance Pack
|
||||
MaintenancePackNumber = Convert.ToInt32(versionSegments[5].Replace("MP", ""));
|
||||
NxVersionString = String.Concat("V", (Convert.ToInt32(versionSegments[1]) + 18).ToString(), ".", versionSegments[2], ".", versionSegments[3], ".", versionSegments[4]); //NX Version String
|
||||
NxMajorVersionString = String.Concat("V", (Convert.ToInt32(versionSegments[1]) + 18).ToString()); //Major Version String
|
||||
NxMinorVersionString = versionSegments[2].ToString(); //Minor Version String
|
||||
NxSubminorVersionString = versionSegments[3].ToString(); //Subminor Version String
|
||||
NxPhaseString = versionSegments[4].ToString(); //NX Phase String
|
||||
UgiiFullVersion = String.Concat("v", versionSegments[1], ".", versionSegments[2], ".", versionSegments[3], ".", versionSegments[4]); //NX Full Version
|
||||
UgiiVersion = String.Concat("v", versionSegments[1]);
|
||||
PostNX12 = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
NXpatch = String.Concat(versionSegments[0], " ", versionSegments[1], ".", versionSegments[2], ".", versionSegments[3], ".", versionSegments[4], " ", versionSegments[5]); //NX Patch
|
||||
NXversion = String.Concat(versionSegments[0], " ", versionSegments[1]); //NX Version
|
||||
MaintenanceRelease = String.Concat(versionSegments[1], ".", versionSegments[2]); //Maintenance Release
|
||||
UgiiProductName = versionSegments[0]; //Produkt Name
|
||||
UgiiMajorVersion = Convert.ToInt32(versionSegments[1]); //Major Version
|
||||
UgiiMinorVersion = Convert.ToInt32(versionSegments[3]); //Minor Version
|
||||
UgiiSubminorVersion = Convert.ToInt32(versionSegments[4]); //Subminor Version
|
||||
NXphase = Convert.ToInt32(versionSegments[2]); //NX Phase
|
||||
MaintenancePack = versionSegments[5]; //Maintenance Pack
|
||||
MaintenancePackNumber = Convert.ToInt32(versionSegments[5].Replace("MP", ""));
|
||||
NxVersionString = nxVerString; //NX Version String
|
||||
NxMajorVersionString = String.Concat("V", (Convert.ToInt32(versionSegments[1])).ToString()); //Major Version String
|
||||
NxMinorVersionString = versionSegments[2].ToString(); //Minor Version String
|
||||
NxSubminorVersionString = versionSegments[3].ToString(); //Subminor Version String
|
||||
NxPhaseString = versionSegments[4].ToString(); //NX Phase String
|
||||
UgiiFullVersion = String.Concat("v", versionSegments[1], ".", versionSegments[3], ".", versionSegments[4], ".", versionSegments[2]); //NX Full Version
|
||||
UgiiVersion = String.Concat("v", versionSegments[1]);
|
||||
NxCompatibleBaseReleaseVersion = nxCompBaseRelVer;
|
||||
PostNX12 = true;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void AlignCode(string ugiiProductName, int majorVersion, int minorVersion, int subminorVersion, int phase, int mp)
|
||||
@ -318,6 +332,7 @@ namespace NxVersion
|
||||
NxPhaseString = phase.ToString(); //NX Phase String
|
||||
UgiiFullVersion = String.Concat("v", majorVersion, ".", minorVersion, ".", subminorVersion, ".", phase); //NX Full Version
|
||||
UgiiVersion = String.Concat("v", majorVersion);
|
||||
PostNX12 = !(UgiiMajorVersion <= 12);
|
||||
}
|
||||
|
||||
private string[] SeperateVersionCode(string versionNumber)
|
||||
@ -405,6 +420,10 @@ namespace NxVersion
|
||||
if (patchText.Contains("MP"))
|
||||
{
|
||||
patchText = patchText.Remove(0, patchText.IndexOf("MP")); //Alles vor MP abschneiden
|
||||
if (patchText.Contains(","))
|
||||
{
|
||||
patchText = patchText.Remove(patchText.IndexOf(","));
|
||||
}
|
||||
return patchText;
|
||||
}
|
||||
else
|
||||
@ -417,72 +436,218 @@ namespace NxVersion
|
||||
{
|
||||
NxVersion nxVersion = new NxVersion();
|
||||
|
||||
nxVersion.NXpatch = NXpatch; //NX Patch. E.g.: NX 10.0.3.5 MP4
|
||||
nxVersion.NXversion = NXversion; //NX Version. E.g.: NX 10.0.3.5
|
||||
nxVersion.MaintenanceRelease = MaintenanceRelease; //Maintenance Release. E.g.: 10.0.3.5 of NX 10.0.3.5 MP4
|
||||
nxVersion.UgiiProductName = UgiiProductName; //UGII_PRODUCT_NAME. E.g.: NX of NX 10.0.3.5
|
||||
nxVersion.UgiiMajorVersion = UgiiMajorVersion; //UGII_MAJOR_VERSION. E.g.: 10 of NX 10.0.3.5
|
||||
nxVersion.UgiiMinorVersion = UgiiMinorVersion; //UGII_MINOR_VERSION. E.g.: 0 of NX 10.0.3.5
|
||||
nxVersion.UgiiSubminorVersion = UgiiSubminorVersion; //UGII_SUBMINOR_VERSION. E.g.: 3 of NX 10.0.3.5
|
||||
nxVersion.NXphase = NXphase; //NX Phase. E.g.: 5 of NX 10.0.3.
|
||||
nxVersion.MaintenancePack = MaintenancePack; //Maintenance Pack. E.g.: MP4 of NX 10.0.3.5 MP4
|
||||
nxVersion.MaintenancePackNumber = MaintenancePackNumber; //Maintenance Pack Number. E.g.: 4 of NX 10.0.3.5 MP4
|
||||
nxVersion.NxVersionString = NxVersionString; //NX_VERSION_STRING. E.g.: V28.0.3.5 instead of NX 10.0.3.5 MP4
|
||||
nxVersion.NxMajorVersionString = NxMajorVersionString; //NX_MAJOR_STRING. E.g.: V28 of V28.0.3.5
|
||||
nxVersion.NxMinorVersionString = NxMinorVersionString; //NX_MINOR_STRING. E.g.: 0 of V28.0.3.5
|
||||
nxVersion.NxSubminorVersionString = NxSubminorVersionString; //NX_SUBMINOR_STRING. E.g.: 3 of V28.0.3.5
|
||||
nxVersion.NxPhaseString = NxPhaseString; //NX_PHASE_STRING. E.g.: 5 of V28.0.3.5
|
||||
nxVersion.UgiiFullVersion = UgiiFullVersion; //UGII_FULL_VERSION. E.g.: v10.0.3.5 instead of NX 10.0.3.5
|
||||
nxVersion.UgiiVersion = UgiiVersion; //UGII_VERSION. E.g.: v10 of v10.0.3.5
|
||||
if (UgiiMajorVersion <= 12)
|
||||
{
|
||||
nxVersion.NXpatch = NXpatch; //NX Patch. E.g.: NX 10.0.3.5 MP4
|
||||
nxVersion.NXversion = NXversion; //NX Version. E.g.: NX 10.0.3.5 or 1973
|
||||
nxVersion.MaintenanceRelease = MaintenanceRelease; //Maintenance Release. E.g.: 10.0.3.5 of NX 10.0.3.5 MP4 or 1973.3701 of 1973.0.0.3701
|
||||
nxVersion.UgiiProductName = UgiiProductName; //UGII_PRODUCT_NAME. E.g.: NX of NX 10.0.3.5 or NX of 1973.3701
|
||||
nxVersion.UgiiMajorVersion = UgiiMajorVersion; //UGII_MAJOR_VERSION. E.g.: 10 of NX 10.0.3.5 or 1973 of 1973.0.03701
|
||||
nxVersion.UgiiMinorVersion = UgiiMinorVersion; //UGII_MINOR_VERSION. E.g.: 0 of NX 10.0.3.5 or 0 of 1973.0.0.3701
|
||||
nxVersion.UgiiSubminorVersion = UgiiSubminorVersion; //UGII_SUBMINOR_VERSION. E.g.: 3 of NX 10.0.3.5 or 0 of 1973.0.0.3701
|
||||
nxVersion.NXphase = NXphase; //NX Phase. E.g.: 5 of NX 10.0.3.5 or 3701 of 1973.0.0.3701
|
||||
nxVersion.MaintenancePack = MaintenancePack; //Maintenance Pack. E.g.: MP4 of NX 10.0.3.5 MP4
|
||||
nxVersion.MaintenancePackNumber = MaintenancePackNumber; //Maintenance Pack Number. E.g.: 4 of NX 10.0.3.5 MP4
|
||||
nxVersion.NxVersionString = NxVersionString; //NX_VERSION_STRING. E.g.: V28.0.3.5 instead of NX 10.0.3.5 MP4
|
||||
nxVersion.NxMajorVersionString = NxMajorVersionString; //NX_MAJOR_STRING. E.g.: V28 of V28.0.3.5
|
||||
nxVersion.NxMinorVersionString = NxMinorVersionString; //NX_MINOR_STRING. E.g.: 0 of V28.0.3.5
|
||||
nxVersion.NxSubminorVersionString = NxSubminorVersionString; //NX_SUBMINOR_STRING. E.g.: 3 of V28.0.3.5
|
||||
nxVersion.NxPhaseString = NxPhaseString; //NX_PHASE_STRING. E.g.: 5 of V28.0.3.5
|
||||
nxVersion.UgiiFullVersion = UgiiFullVersion; //UGII_FULL_VERSION. E.g.: v10.0.3.5 instead of NX 10.0.3.5 or v1973.3701
|
||||
nxVersion.UgiiVersion = UgiiVersion; //UGII_VERSION. E.g.: v10 of v10.0.3.5
|
||||
nxVersion.PostNX12 = PostNX12;
|
||||
}
|
||||
else
|
||||
{
|
||||
nxVersion.NXpatch = NXpatch; //NX Patch. E.g.: NX 10.0.3.5 MP4
|
||||
nxVersion.NXversion = NXversion; //NX Version. E.g.: NX 10.0.3.5
|
||||
nxVersion.MaintenanceRelease = MaintenanceRelease; //Maintenance Release. E.g.: 10.0.3.5 of NX 10.0.3.5 MP4
|
||||
nxVersion.UgiiProductName = UgiiProductName; //UGII_PRODUCT_NAME. E.g.: NX of NX 10.0.3.5
|
||||
nxVersion.UgiiMajorVersion = UgiiMajorVersion; //UGII_MAJOR_VERSION. E.g.: 10 of NX 10.0.3.5
|
||||
nxVersion.UgiiMinorVersion = UgiiMinorVersion; //UGII_MINOR_VERSION. E.g.: 0 of NX 10.0.3.5
|
||||
nxVersion.UgiiSubminorVersion = UgiiSubminorVersion; //UGII_SUBMINOR_VERSION. E.g.: 3 of NX 10.0.3.5
|
||||
nxVersion.NXphase = NXphase; //NX Phase. E.g.: 5 of NX 10.0.3.
|
||||
nxVersion.MaintenancePack = MaintenancePack; //Maintenance Pack. E.g.: MP4 of NX 10.0.3.5 MP4
|
||||
nxVersion.MaintenancePackNumber = MaintenancePackNumber; //Maintenance Pack Number. E.g.: 4 of NX 10.0.3.5 MP4
|
||||
nxVersion.NxVersionString = NxVersionString; //NX_VERSION_STRING. E.g.: V28.0.3.5 instead of NX 10.0.3.5 MP4
|
||||
nxVersion.NxMajorVersionString = NxMajorVersionString; //NX_MAJOR_STRING. E.g.: V28 of V28.0.3.5
|
||||
nxVersion.NxMinorVersionString = NxMinorVersionString; //NX_MINOR_STRING. E.g.: 0 of V28.0.3.5
|
||||
nxVersion.NxSubminorVersionString = NxSubminorVersionString; //NX_SUBMINOR_STRING. E.g.: 3 of V28.0.3.5
|
||||
nxVersion.NxPhaseString = NxPhaseString; //NX_PHASE_STRING. E.g.: 5 of V28.0.3.5
|
||||
nxVersion.UgiiFullVersion = UgiiFullVersion; //UGII_FULL_VERSION. E.g.: v10.0.3.5 instead of NX 10.0.3.5
|
||||
nxVersion.UgiiVersion = UgiiVersion; //UGII_VERSION. E.g.: v10 of v10.0.3.5
|
||||
nxVersion.NxCompatibleBaseReleaseVersion = NxCompatibleBaseReleaseVersion; //NX_COMPATIBLE_BASE_RELEASE_VERSION. E.g.: NX 1953
|
||||
nxVersion.PostNX12 = PostNX12;
|
||||
}
|
||||
|
||||
|
||||
return nxVersion;
|
||||
}
|
||||
|
||||
///// <summary>
|
||||
// /// Assign values to a NX Version.
|
||||
// /// </summary>
|
||||
// /// <param name="ugii_base_dir">A valid UGII_BASE_DIR.</param>
|
||||
// /// <returns>A full defined NX Version.</returns>
|
||||
//private NxVersion GetNxVersion(string ugii_base_dir)
|
||||
//{
|
||||
// NxVersion nxVersion = new NxVersion();
|
||||
private NxVersion AssignVersionSegments(string[] versionSegments)
|
||||
{
|
||||
NxVersion nxVersion = new NxVersion();
|
||||
|
||||
// string tempVersion = "";
|
||||
// string tempPatchText = "";
|
||||
// NX_VERSION. E.g.: NX 10.0.3.5
|
||||
nxVersion.NXversion = versionSegments[0] + " " + versionSegments[1] + "." + versionSegments[2] + "." + versionSegments[3] + "." + versionSegments[4];
|
||||
NXversion = nxVersion.NXversion;
|
||||
|
||||
// NX_PHASE. E.g.: 5 of NX 10.0.3.5
|
||||
nxVersion.NXphase = Convert.ToInt16(versionSegments[4]);
|
||||
NXphase = nxVersion.NXphase;
|
||||
|
||||
// NX_PATCH. E.g.: NX 10.0.3.5 MP4
|
||||
nxVersion.NXpatch = nxVersion.NXversion + " " + versionSegments[5];
|
||||
NXpatch = nxVersion.NXpatch;
|
||||
|
||||
|
||||
// if (Directory.Exists(ugii_base_dir))
|
||||
// {
|
||||
// tempVersion = ReadProcessOutput(ugii_base_dir, "-n"); //Prozess mit env_print.exe -n aufrufen
|
||||
// tempPatchText = ReadProcessOutput(ugii_base_dir, "-m"); //Prozess mit env_print.exe -m aufrufen
|
||||
// UGII_PRODUCT_NAME. E.g.: NX of NX 10.0.3.5
|
||||
nxVersion.UgiiProductName = versionSegments[0];
|
||||
UgiiProductName = nxVersion.UgiiProductName;
|
||||
|
||||
// //Wert auflösen und in den Variablen ablegen
|
||||
// AlignCode(tempVersion, tempPatchText);
|
||||
// UGII_VERSION. E.g.: v10 of NX 10.0.3.5
|
||||
nxVersion.UgiiVersion = "v" + versionSegments[1];
|
||||
UgiiVersion = nxVersion.UgiiVersion;
|
||||
|
||||
// return AssignVersion(); //Werte zuordnen
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// return null; //Wenn 'ugii_base_dir' nicht existiert, dann 'null' zurückgeben
|
||||
// }
|
||||
//}
|
||||
// UGII_FULL_VERSION. E.g.: v10.0.3.5
|
||||
nxVersion.UgiiFullVersion = "v" + versionSegments[1] + "." + versionSegments[2] + "." + versionSegments[3] + "." + versionSegments[4];
|
||||
UgiiFullVersion = nxVersion.UgiiFullVersion;
|
||||
|
||||
///// <summary>
|
||||
///// Assign values to a NX Version.
|
||||
///// </summary>
|
||||
///// <param name="ugiiProductName">A valid product name. E.g.: NX</param>
|
||||
///// <param name="majorVersion">A valid UGII_MAJOR_VERSION. E.g.: 10 of NX 10.0.3.5</param>
|
||||
///// <param name="minorVersion">A valid UGII_MINOR_VERSION. E.g.: 0 of NX 10.0.3.5</param>
|
||||
///// <returns>A full defined NX Version.</returns>
|
||||
//private NxVersion GetNxVersion(string ugiiProductName, int majorVersion, int minorVersion)
|
||||
//{
|
||||
// NxVersion nxVersion = new NxVersion();
|
||||
// UGII_MAJOR_VERSION. E.g.: 10 of NX 10.0.3.5
|
||||
nxVersion.UgiiMajorVersion = Convert.ToInt16(versionSegments[1]);
|
||||
UgiiMajorVersion = nxVersion.UgiiMajorVersion;
|
||||
|
||||
// //Wert auflösen und in den Variablen ablegen
|
||||
// AlignCode(ugiiProductName, majorVersion, minorVersion, 0, 0, 0);
|
||||
// UGII_MINOR_VERSION. E.g.: 0 of NX 10.0.3.5
|
||||
nxVersion.UgiiMinorVersion = Convert.ToInt16(versionSegments[2]);
|
||||
UgiiMinorVersion = nxVersion.UgiiMinorVersion;
|
||||
|
||||
// return AssignVersion(); //Werte zuordnen
|
||||
//}
|
||||
// UGII_SUBMINOR_VERSION. E.g.: 3 of NX 10.0.3.5
|
||||
nxVersion.UgiiSubminorVersion = Convert.ToInt16(versionSegments[3]);
|
||||
UgiiSubminorVersion = nxVersion.UgiiSubminorVersion;
|
||||
|
||||
|
||||
// NX_VERSION_STRING. E.g.: V28.0.3.5 instead of NX 10.0.3.5 MP4
|
||||
nxVersion.NxVersionString = "V" + (Convert.ToInt16(versionSegments[1]) + 18).ToString() + "." + versionSegments[2] + "." + versionSegments[3] + "." + versionSegments[4];
|
||||
NxVersionString = nxVersion.NxVersionString;
|
||||
|
||||
// NX_MAJOR_STRING. E.g.: V28 of V28.0.3.5
|
||||
nxVersion.NxMajorVersionString = "V" + (Convert.ToInt16(versionSegments[1]) + 18).ToString();
|
||||
NxMajorVersionString = nxVersion.NxMajorVersionString;
|
||||
|
||||
// NX_MINOR_STRING. E.g.: 0 of V28.0.3.5
|
||||
nxVersion.NxMinorVersionString = versionSegments[2];
|
||||
NxMinorVersionString = nxVersion.NxMinorVersionString;
|
||||
|
||||
// NX_SUBMINOR_STRING. E.g.: 3 of V28.0.3.5
|
||||
nxVersion.NxSubminorVersionString = versionSegments[3];
|
||||
NxSubminorVersionString = nxVersion.NxSubminorVersionString;
|
||||
|
||||
// NX_PHASE_STRING. E.g.: 5 of V28.0.3.5
|
||||
nxVersion.NxPhaseString = versionSegments[4];
|
||||
NxPhaseString = nxVersion.NxPhaseString;
|
||||
|
||||
|
||||
// Maintenance Release. E.g.: 10.0.3.5 of NX 10.0.3.5 MP4
|
||||
nxVersion.MaintenanceRelease = versionSegments[1] + "." + versionSegments[2] + "." + versionSegments[3] + "." + versionSegments[4];
|
||||
MaintenanceRelease = nxVersion.MaintenanceRelease;
|
||||
|
||||
// Maintenance Pack. E.g.: MP4 of NX 10.0.3.5 MP4
|
||||
nxVersion.MaintenancePack = versionSegments[5];
|
||||
MaintenancePack = nxVersion.MaintenancePack;
|
||||
|
||||
// Maintenance Pack Number. E.g.: 4 of NX 10.0.3.5 MP4
|
||||
nxVersion.MaintenancePackNumber = Convert.ToInt16(nxVersion.MaintenancePack.Remove(0, nxVersion.MaintenancePack.IndexOf("MP") + 2));
|
||||
MaintenancePackNumber = nxVersion.MaintenancePackNumber;
|
||||
|
||||
// Post NX12. E.g.: true
|
||||
nxVersion.PostNX12 = PostNX12;
|
||||
|
||||
return nxVersion;
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region Common Public Methodes
|
||||
/// <summary>
|
||||
/// Converts a NxPatch string to NxVersion
|
||||
/// </summary>
|
||||
/// <param name="nxPatch">A valid NxPatch. E.g.: NX 10.0.3.5 MP4</param>
|
||||
/// <returns></returns>
|
||||
public NxVersion ConvertStringPatchToNxVersionPatch(string nxPatch)
|
||||
{
|
||||
return AssignVersionSegments(SeperateVersionCode(nxPatch));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Assign values to a NX Version.
|
||||
/// </summary>
|
||||
/// <param name="ugii_base_dir">A valid UGII_BASE_DIR.</param>
|
||||
/// <returns>A full defined NX Version.</returns>
|
||||
public NxVersion GetNxVersion(string ugii_base_dir)
|
||||
{
|
||||
NxVersion nxVersion = new NxVersion();
|
||||
|
||||
string tempVersion = "";
|
||||
string tempPatchText = "";
|
||||
|
||||
|
||||
if (Directory.Exists(ugii_base_dir))
|
||||
{
|
||||
tempVersion = ReadProcessOutput(ugii_base_dir, "-n"); //Prozess mit env_print.exe -n aufrufen
|
||||
tempPatchText = ReadProcessOutput(ugii_base_dir, "-m"); //Prozess mit env_print.exe -m aufrufen
|
||||
|
||||
string nxVerString = ReadNxEnvValues(ugii_base_dir + "\\UGII\\", "-v");
|
||||
nxVerString = nxVerString.Remove(nxVerString.IndexOf("\r"));
|
||||
string nxCompBaseRelVer = ReadNxEnvValues(ugii_base_dir + "\\UGII\\", "-f");
|
||||
if (!String.IsNullOrEmpty(nxCompBaseRelVer))
|
||||
{
|
||||
nxCompBaseRelVer = nxCompBaseRelVer.Remove(nxCompBaseRelVer.IndexOf("\r"));
|
||||
}
|
||||
|
||||
//Wert auflösen und in den Variablen ablegen
|
||||
AlignCode(tempVersion, tempPatchText, nxVerString, nxCompBaseRelVer);
|
||||
|
||||
return AssignVersion(); //Werte zuordnen
|
||||
}
|
||||
else
|
||||
{
|
||||
return null; //Wenn 'ugii_base_dir' nicht existiert, dann 'null' zurückgeben
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Assign values to a NX Version.
|
||||
/// </summary>
|
||||
/// <param name="ugiiProductName">A valid product name. E.g.: NX</param>
|
||||
/// <param name="majorVersion">A valid UGII_MAJOR_VERSION. E.g.: 10 of NX 10.0.3.5</param>
|
||||
/// <param name="minorVersion">A valid UGII_MINOR_VERSION. E.g.: 0 of NX 10.0.3.5</param>
|
||||
/// <returns>A full defined NX Version.</returns>
|
||||
public NxVersion GetNxVersion(string ugiiProductName, int majorVersion, int minorVersion)
|
||||
{
|
||||
NxVersion nxVersion = new NxVersion();
|
||||
|
||||
//Wert auflösen und in den Variablen ablegen
|
||||
AlignCode(ugiiProductName, majorVersion, minorVersion, 0, 0, 0);
|
||||
|
||||
return AssignVersion(); //Werte zuordnen
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Assign values to a NX Version.
|
||||
/// </summary>
|
||||
/// <param name="ugiiProductName">A valid product name. E.g.: NX</param>
|
||||
/// <param name="majorVersion">A valid UGII_MAJOR_VERSION. E.g.: 10 of NX 10.0.3.5</param>
|
||||
/// <param name="minorVersion">A valid UGII_MINOR_VERSION. E.g.: 0 of NX 10.0.3.5</param>
|
||||
/// <param name="subminorVersion">A valid UGII_SUBMINOR_VERSION. E.g.: 3 of NX 10.0.3.5</param>
|
||||
/// <returns>A full defined NX Version.</returns>
|
||||
public NxVersion GetNxVersion(string ugiiProductName, int majorVersion, int minorVersion, int subminorVersion)
|
||||
{
|
||||
NxVersion nxVersion = new NxVersion();
|
||||
|
||||
//Wert auflösen und in den Variablen ablegen
|
||||
AlignCode(ugiiProductName, majorVersion, minorVersion, subminorVersion, 0, 0);
|
||||
|
||||
return AssignVersion(); //Werte zuordnen
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Assign values to a NX Version.
|
||||
@ -494,7 +659,7 @@ namespace NxVersion
|
||||
/// <param name="phase">A valid NX Phase. E.g.: 5 of NX 10.0.3.5</param>
|
||||
/// <param name="mp">A valid Maintenance Pack. E.g.: MP4 of NX 10.0.3.5 MP4</param>
|
||||
/// <returns>A full defined NX Version.</returns>
|
||||
private NxVersion GetNxVersion(string ugiiProductName, int majorVersion, int minorVersion, int subminorVersion, int phase, int mp)
|
||||
public NxVersion GetNxVersion(string ugiiProductName, int majorVersion, int minorVersion, int subminorVersion, int phase, int mp)
|
||||
{
|
||||
NxVersion nxVersion = new NxVersion();
|
||||
|
||||
@ -513,7 +678,6 @@ namespace NxVersion
|
||||
/// <returns>0 = equal, 1 = first version newer, 2 = second version newer, -1 = An error is happened.</returns>
|
||||
public int Compare(NxVersion version)
|
||||
{
|
||||
//version.PostNX12 = IsPostNX12(version);
|
||||
return Compare(this, version);
|
||||
}
|
||||
|
||||
@ -525,15 +689,15 @@ namespace NxVersion
|
||||
/// <returns>0 = equal, 1 = first version newer, 2 = second version newer, -1 = An error is happened.</returns>
|
||||
public int Compare(NxVersion version1, NxVersion version2)
|
||||
{
|
||||
if (IsPostNX12(version1) & IsPostNX12(version2))
|
||||
if (version1.PostNX12 & version2.PostNX12)
|
||||
{
|
||||
return ComparePostNX12(version1, version2);
|
||||
}
|
||||
if (!IsPostNX12(version1) & !IsPostNX12(version2))
|
||||
if (!version1.PostNX12 & !version2.PostNX12)
|
||||
{
|
||||
return CompareUpToNX12(version1, version2);
|
||||
}
|
||||
if ((IsPostNX12(version1) & !IsPostNX12(version2)) || (!IsPostNX12(version1) & IsPostNX12(version2)))
|
||||
if ((version1.PostNX12 & !version2.PostNX12) || (!version1.PostNX12 & version2.PostNX12))
|
||||
{
|
||||
return CompareDiffVersions(version1, version2);
|
||||
}
|
||||
|
||||
@ -10,7 +10,7 @@ using System.Runtime.InteropServices;
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("NxVersion")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2019")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2019 by Eugen Höglinger")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user