-
+
+
-
-
-
-
-
-
-
+
+ @if (showKeyMan)
+ {
+
+
+
Gestione Licenza
+
+
+
+
+
+
+
+
+
+ }
+
@code {
- protected Dictionary
biosInfo = new Dictionary();
- protected Dictionary cpuInfo = new Dictionary();
- protected Dictionary netInfo = new Dictionary();
- protected Dictionary osInfo = new Dictionary();
- protected Dictionary ramInfo = new Dictionary();
+ private Dictionary biosInfo = new Dictionary();
+ private Dictionary cpuInfo = new Dictionary();
+ private Dictionary netInfo = new Dictionary();
+ private Dictionary osInfo = new Dictionary();
+ private Dictionary ramInfo = new Dictionary();
- protected bool showBios = false;
- protected bool showCpu = false;
- protected bool showNet = false;
- protected bool showOs = false;
- protected bool showRam = false;
+ private bool showBios = false;
+ private bool showCpu = false;
+ private bool showNet = false;
+ private bool showOs = false;
+ private bool showRam = false;
+ private bool showKeyMan = false;
+
+ private bool licOk = false;
+
+ private string licVal { get; set; } = "";
+ private string fileName { get; set; } = "InfoData.json";
protected override async Task OnInitializedAsync()
{
- biosInfo = await MachineInfo.GetBiosInfo();
- cpuInfo = await MachineInfo.GetCpuInfo();
- netInfo = await MachineInfo.GetNetInfo();
- osInfo = await MachineInfo.GetOsInfo();
- ramInfo = await MachineInfo.GetRamInfo();
+ biosInfo = await MachineInfo.GetInfo("BIOS");
+ cpuInfo = await MachineInfo.GetInfo("CPU");
+ netInfo = await MachineInfo.GetInfo("NET");
+ osInfo = await MachineInfo.GetInfo("OS");
+ ramInfo = await MachineInfo.GetInfo("RAM");
+ // check licenze
+ licOk = await MachineDataValidator.testCurrInfo();
}
- protected void ShowAll()
+ private void ShowAll()
{
showBios = true;
showCpu = true;
@@ -52,4 +94,39 @@
showOs = true;
showRam = true;
}
+
+ private void ToggleKeyMan()
+ {
+ showKeyMan = !showKeyMan;
+ // salvo su disco...
+ saveInfoData();
+ }
+
+ private void saveInfoData()
+ {
+ var fullData = biosInfo.Concat(cpuInfo).Concat(netInfo).Concat(osInfo).Concat(ramInfo).GroupBy(ele => ele.Key).OrderBy(x => x.Key).ToDictionary(ele => ele.Key, ele => ele.First().Value);
+ string filePath = Path.Combine(baseDir, "temp", "InfoData.json");
+ File.WriteAllText(filePath, JsonConvert.SerializeObject(fullData, Formatting.Indented));
+ }
+ private string baseDir = $"{Directory.GetCurrentDirectory()}";
+
+ private async Task SaveLic()
+ {
+ //se ho un valore x la licenza...
+ if (!string.IsNullOrEmpty(licVal))
+ {
+ string filePath = Path.Combine(baseDir, "Conf", "lic.file");
+ File.WriteAllText(filePath, licVal);
+ }
+
+ // check licenze
+ licOk = await MachineDataValidator.testCurrInfo();
+ // se ok --> rivado ad home!
+ if (licOk)
+ {
+ await Task.Delay(1);
+ // rimando alla home
+ NavManager.NavigateTo("/", true);
+ }
+ }
}
diff --git a/MP.MONO.UI/Pages/_Layout.cshtml b/MP.MONO.UI/Pages/_Layout.cshtml
index f39a447..69d4642 100644
--- a/MP.MONO.UI/Pages/_Layout.cshtml
+++ b/MP.MONO.UI/Pages/_Layout.cshtml
@@ -1,4 +1,5 @@
@using Microsoft.AspNetCore.Components.Web
+@using MP.MONO.UI.Components
@namespace MP.MONO.UI.Pages
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
@@ -10,9 +11,9 @@
-
+
-
+
@@ -29,6 +30,25 @@
Reload
🗙
+ @if (!MP.MONO.Core.MachineDataValidator.testCurrInfo().Result)
+ {
+
+ @for (int j = 0; j < 5; j++)
+ {
+
+
+ Multiax Dashboard DEMO - (c)2022 EgalWare srl
+
+ @for (int i = 0; i < 5; i++)
+ {
+
+

+
+ }
+
+ }
+
+ }
diff --git a/MP.MONO.UI/Properties/PublishProfiles/IISProfile.pubxml b/MP.MONO.UI/Properties/PublishProfiles/IISProfile.pubxml
new file mode 100644
index 0000000..5d3f078
--- /dev/null
+++ b/MP.MONO.UI/Properties/PublishProfiles/IISProfile.pubxml
@@ -0,0 +1,21 @@
+
+
+
+
+ Package
+ Release
+ Any CPU
+
+ true
+ false
+ 6fb65850-c023-4986-9dff-770c4e582d60
+ bin\publish\net6.0\MP.MONO.UI.zip
+ true
+ Default Web Site/MP.MONO.UI
+ net6.0
+ false
+
+
\ No newline at end of file
diff --git a/MP.MONO.UI/Resources/ChangeLog.html b/MP.MONO.UI/Resources/ChangeLog.html
index 9384154..432256c 100644
--- a/MP.MONO.UI/Resources/ChangeLog.html
+++ b/MP.MONO.UI/Resources/ChangeLog.html
@@ -1,6 +1,6 @@
MAPO-MONO
-
Version: 1.12206.714
+
Version: 1.12206.819
Release Note:
-
diff --git a/MP.MONO.UI/Resources/VersNum.txt b/MP.MONO.UI/Resources/VersNum.txt
index 694179e..eef9ac1 100644
--- a/MP.MONO.UI/Resources/VersNum.txt
+++ b/MP.MONO.UI/Resources/VersNum.txt
@@ -1 +1 @@
-1.12206.714
+1.12206.819
diff --git a/MP.MONO.UI/Resources/manifest.xml b/MP.MONO.UI/Resources/manifest.xml
index f177359..4f914a7 100644
--- a/MP.MONO.UI/Resources/manifest.xml
+++ b/MP.MONO.UI/Resources/manifest.xml
@@ -1,6 +1,6 @@
-
- 1.12206.714
+ 1.12206.819
http://nexus.steamware.net/repository/SWS/MP.MONO.UI/stable/LAST/MP.Mon.zip
http://nexus.steamware.net/repository/SWS/MP.MONO.UI/stable/LAST/ChangeLog.html
false
diff --git a/obfuscar copy.xml b/MP.MONO.UI/obfuscar.orig.xml
similarity index 73%
rename from obfuscar copy.xml
rename to MP.MONO.UI/obfuscar.orig.xml
index 86fcc69..68c8c6e 100644
--- a/obfuscar copy.xml
+++ b/MP.MONO.UI/obfuscar.orig.xml
@@ -1,7 +1,7 @@
-
-
+
+
@@ -12,5 +12,4 @@
-
\ No newline at end of file
diff --git a/MP.MONO.UI/obfuscar.xml b/MP.MONO.UI/obfuscar.xml
new file mode 100644
index 0000000..5a57da7
--- /dev/null
+++ b/MP.MONO.UI/obfuscar.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/MP.MONO.UI/obfuscate.ps1 b/MP.MONO.UI/obfuscate.ps1
new file mode 100644
index 0000000..384672f
--- /dev/null
+++ b/MP.MONO.UI/obfuscate.ps1
@@ -0,0 +1,48 @@
+param([string]$CurrConfig);
+
+#verifico se encessario installare come global tool
+$testString = dotnet tool list -g | Select-String -Pattern "obfuscar.globaltool"
+if($testString -eq $null)
+{
+ Write-Output("Installing obfuscar as global tool")
+ dotnet tool install --global Obfuscar.GlobalTool --version 2.2.33
+}
+else
+{
+ Write-Output("Obfuscar already installed!")
+ #dotnet tool update --global Obfuscar.GlobalTool --version 2.2.33
+}
+
+# fix folder obf
+$FolderName = "\bin\Debug\net6.0_obf\"
+if (Test-Path $FolderName) {
+
+ Write-Host "Folder Exists"
+}
+else {
+
+ #PowerShell Create directory if not exists
+ New-Item $FolderName -ItemType Directory
+ Write-Host "Folder Created successfully"
+
+}
+
+# sistemo XML x usare la conf corrente
+$OrigConfPath = "obfuscar.orig.xml"
+$ConfigPath = "obfuscar.xml"
+$configFile = Get-Content $OrigConfPath
+$find = "{{CURR_CONFIG}}";
+$configFileUpd = $configFile -replace $find, $CurrConfig
+Set-Content -Path $ConfigPath -Value $configFileUpd
+Write-Output("Config File set:")
+Write-Output($configFileUpd)
+
+# chiamo script principale
+#C:\Users\samuele.steamw\.dotnet\tools\obfuscar.console.exe obfuscar.xml
+obfuscar.console.exe obfuscar.xml
+#obfuscar.console obfuscar.xml
+Write-Output("Obfuscar completed!")
+
+# sovrascrivo dll originali con i file elaborati
+Copy-Item .\bin\$CurrConfig\net6.0_obf\*.dll .\bin\$CurrConfig\net6.0\
+Write-Output("Obfuscated dll copy completed!")
diff --git a/MP.MONO.UI/temp/InfoData.json b/MP.MONO.UI/temp/InfoData.json
new file mode 100644
index 0000000..6dcb9ed
--- /dev/null
+++ b/MP.MONO.UI/temp/InfoData.json
@@ -0,0 +1,56 @@
+{
+ "AdapterType": "Ethernet 802.3",
+ "AddressWidth": "64",
+ "Architecture": "9",
+ "BiosVersion": "ALASKA - 1072009",
+ "BuildNumber": "19044",
+ "Caption": "Microsoft Windows 10 Pro N",
+ "ConfiguredClockSpeed": "3600",
+ "ConfiguredVoltage": "1200",
+ "CpuVersion": "Modello 1, Stepping 0",
+ "CurrentClockSpeed": "3501",
+ "CurrentVoltage": "11",
+ "DataWidth": "64",
+ "Description": "AMD64 Family 23 Model 113 Stepping 0",
+ "DeviceLocator": "DIMM 1",
+ "ExtClock": "100",
+ "Family": "107",
+ "FormFactor": "8",
+ "GUID": "{E76995C4-F180-406E-B9C3-E491C65A8FCF}",
+ "L2CacheSize": "8192",
+ "L3CacheSize": "65536",
+ "Level": "23",
+ "LoadPercentage": "8",
+ "MACAddress": "0C:9D:92:B8:FD:E8",
+ "Manufacturer": "American Megatrends International, LLC.",
+ "MaxNumberOfProcesses": "4294967295",
+ "MaxProcessMemorySize": "137438953344",
+ "MaxVoltage": "1200",
+ "MinVoltage": "1200",
+ "Name": "ASUS XG-C100C 10G PCI-E Network Adapter",
+ "NumberOfCores": "16",
+ "NumberOfLogicalProcessors": "32",
+ "OSArchitecture": "64 bit",
+ "PartNumber": "CMK64GX4M2D3600C18",
+ "PhysicalAdapter": "True",
+ "ProcessorId": "178BFBFF00870F10",
+ "ProcessorType": "3",
+ "ProductName": "ASUS XG-C100C 10G PCI-E Network Adapter",
+ "ReleaseDate": "20210521000000.000000+000",
+ "Revision": "28928",
+ "Role": "CPU",
+ "SerialNumber": "00332-00332-17209-AA940",
+ "ServiceName": "aqnic650",
+ "SMBIOSBIOSVersion": "F33",
+ "SMBIOSMajorVersion": "3",
+ "SMBIOSMemoryType": "26",
+ "SMBIOSMinorVersion": "3",
+ "SocketDesignation": "AM4",
+ "SoftwareElementID": "F33",
+ "SoftwareElementState": "3",
+ "Speed": "3600",
+ "SystemBiosMajorVersion": "5",
+ "SystemBiosMinorVersion": "17",
+ "SystemName": "WRKST-R9-SAM",
+ "Version": "10.0.19044"
+}
\ No newline at end of file
diff --git a/MP.MONO.UI/temp/OUT.csv b/MP.MONO.UI/temp/OUT.csv
new file mode 100644
index 0000000..5f28270
--- /dev/null
+++ b/MP.MONO.UI/temp/OUT.csv
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/MP.MONO.UI/wwwroot/css/site.css b/MP.MONO.UI/wwwroot/css/site.css
index 120e57d..2cd39a7 100644
--- a/MP.MONO.UI/wwwroot/css/site.css
+++ b/MP.MONO.UI/wwwroot/css/site.css
@@ -46,6 +46,12 @@ a,
.validation-message {
color: red;
}
+.watermark {
+ position: absolute;
+ top: 250px;
+ left: 500px;
+ opacity: 0.2;
+}
.textTrim {
white-space: nowrap;
overflow: hidden;
diff --git a/MP.MONO.UI/wwwroot/css/site.less b/MP.MONO.UI/wwwroot/css/site.less
index 7ada801..c105f0c 100644
--- a/MP.MONO.UI/wwwroot/css/site.less
+++ b/MP.MONO.UI/wwwroot/css/site.less
@@ -45,6 +45,12 @@ a, .btn-link {
color: red;
}
+.watermark {
+ position: absolute;
+ top: 250px;
+ left: 500px;
+ opacity: 0.2;
+}
.textTrim {
white-space: nowrap;
diff --git a/MP.MONO.UI/wwwroot/css/site.min.css b/MP.MONO.UI/wwwroot/css/site.min.css
index b60a7f1..21c1042 100644
--- a/MP.MONO.UI/wwwroot/css/site.min.css
+++ b/MP.MONO.UI/wwwroot/css/site.min.css
@@ -1 +1 @@
-@import url('open-iconic/font/css/open-iconic-bootstrap.min.css');@import url('fonts.css');h1,h2,h3,h4,h5,h6,b,display-1,display-2,display-3,display-4{font-family:'Lato',sans-serif;}html,body{font-family:'Roboto',sans-serif;}.textConsensed{font-family:'Roboto Condensed',sans-serif;}h1:focus{outline:none;}a,.btn-link{color:#0071c1;}.btn-primary{color:#fff;background-color:#1b6ec2;border-color:#1861ac;}.content{padding-top:1.1rem;}.valid.modified:not([type=checkbox]){outline:1px solid #26b050;}.invalid{outline:1px solid #f00;}.validation-message{color:#f00;}.textTrim{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.max5Char{white-space:nowrap;width:10rem;overflow:hidden;text-overflow:ellipsis;}.max10Char{white-space:nowrap;width:10rem;overflow:hidden;text-overflow:ellipsis;}.max20Char{white-space:nowrap;width:20rem;overflow:hidden;text-overflow:ellipsis;}.footer{line-height:1.8em;}#blazor-error-ui{background:#ffffe0;bottom:0;box-shadow:0 -1px 2px rgba(0,0,0,.2);display:none;left:0;padding:.6rem 1.25rem .7rem 1.25rem;position:fixed;width:100%;z-index:1000;}#blazor-error-ui .dismiss{cursor:pointer;position:absolute;right:.75rem;top:.5rem;}.blazor-error-boundary{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem,#b32121;padding:1rem 1rem 1rem 3.7rem;color:#fff;}.blazor-error-boundary::after{content:"An error has occurred.";}.shortcuts{text-align:center;}.shortcuts .shortcut-icon{font-size:2rem;}.shortcuts .shortcut{min-width:9rem;min-height:5rem;display:inline-block;padding:2rem/3 0;margin:0 2px 1em;vertical-align:top;text-decoration:none;background:#f3f3f3;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fff),to(#eee));background-image:-webkit-linear-gradient(top,#fff,0%,#eee,100%);background-image:-moz-linear-gradient(top,#fff 0%,#eee 100%);background-image:linear-gradient(to bottom,#fff 0%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffeeeeee',GradientType=0);border:1px solid #ddd;box-sizing:border-box;border-radius:1rem/2;}.shortcuts .shortcut-sm{min-width:4.5rem;min-height:3rem;display:inline-block;padding:1rem/4 0;margin:0 2px 1em;vertical-align:top;text-decoration:none;background:#f3f3f3;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fff),to(#eee));background-image:-webkit-linear-gradient(top,#fff,0%,#eee,100%);background-image:-moz-linear-gradient(top,#fff 0%,#eee 100%);background-image:linear-gradient(to bottom,#fff 0%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffeeeeee',GradientType=0);border:1px solid #ddd;box-sizing:border-box;border-radius:1rem/2;}.shortcuts .shortcut .shortcut-icon{width:100%;margin-top:0;margin-bottom:0;font-size:2rem;color:#333;}.shortcuts .shortcut-sm .shortcut-icon{width:100%;margin-top:0;margin-bottom:0;font-size:2rem;color:#333;}.shortcuts .shortcut:hover{background:#e8e8e8;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fafafa),to(#e1e1e1));background-image:-webkit-linear-gradient(top,#fafafa,0%,#e1e1e1,100%);background-image:-moz-linear-gradient(top,#fafafa 0%,#e1e1e1 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#e1e1e1 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa',endColorstr='#ffe1e1e1',GradientType=0);}.shortcuts .shortcut-sm:hover{background:#e8e8e8;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fafafa),to(#e1e1e1));background-image:-webkit-linear-gradient(top,#fafafa,0%,#e1e1e1,100%);background-image:-moz-linear-gradient(top,#fafafa 0%,#e1e1e1 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#e1e1e1 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa',endColorstr='#ffe1e1e1',GradientType=0);}.shortcuts .shortcut:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125);}.shortcuts .shortcut-sm:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125);}.shortcuts .shortcut:hover .shortcut-icon{color:#c93;}.shortcuts .shortcut-sm:hover .shortcut-icon{color:#666;}.shortcuts .shortcut-label{display:block;margin-top:.75em;font-weight:400;color:#666;}@media(max-width:640px){.shortcuts .shortcut{min-width:8rem;min-height:4rem;}body{font-size:.8em;}}
\ No newline at end of file
+@import url('open-iconic/font/css/open-iconic-bootstrap.min.css');@import url('fonts.css');h1,h2,h3,h4,h5,h6,b,display-1,display-2,display-3,display-4{font-family:'Lato',sans-serif;}html,body{font-family:'Roboto',sans-serif;}.textConsensed{font-family:'Roboto Condensed',sans-serif;}h1:focus{outline:none;}a,.btn-link{color:#0071c1;}.btn-primary{color:#fff;background-color:#1b6ec2;border-color:#1861ac;}.content{padding-top:1.1rem;}.valid.modified:not([type=checkbox]){outline:1px solid #26b050;}.invalid{outline:1px solid #f00;}.validation-message{color:#f00;}.watermark{position:absolute;top:250px;left:500px;opacity:.2;}.textTrim{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.max5Char{white-space:nowrap;width:10rem;overflow:hidden;text-overflow:ellipsis;}.max10Char{white-space:nowrap;width:10rem;overflow:hidden;text-overflow:ellipsis;}.max20Char{white-space:nowrap;width:20rem;overflow:hidden;text-overflow:ellipsis;}.footer{line-height:1.8em;}#blazor-error-ui{background:#ffffe0;bottom:0;box-shadow:0 -1px 2px rgba(0,0,0,.2);display:none;left:0;padding:.6rem 1.25rem .7rem 1.25rem;position:fixed;width:100%;z-index:1000;}#blazor-error-ui .dismiss{cursor:pointer;position:absolute;right:.75rem;top:.5rem;}.blazor-error-boundary{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem,#b32121;padding:1rem 1rem 1rem 3.7rem;color:#fff;}.blazor-error-boundary::after{content:"An error has occurred.";}.shortcuts{text-align:center;}.shortcuts .shortcut-icon{font-size:2rem;}.shortcuts .shortcut{min-width:9rem;min-height:5rem;display:inline-block;padding:2rem/3 0;margin:0 2px 1em;vertical-align:top;text-decoration:none;background:#f3f3f3;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fff),to(#eee));background-image:-webkit-linear-gradient(top,#fff,0%,#eee,100%);background-image:-moz-linear-gradient(top,#fff 0%,#eee 100%);background-image:linear-gradient(to bottom,#fff 0%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffeeeeee',GradientType=0);border:1px solid #ddd;box-sizing:border-box;border-radius:1rem/2;}.shortcuts .shortcut-sm{min-width:4.5rem;min-height:3rem;display:inline-block;padding:1rem/4 0;margin:0 2px 1em;vertical-align:top;text-decoration:none;background:#f3f3f3;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fff),to(#eee));background-image:-webkit-linear-gradient(top,#fff,0%,#eee,100%);background-image:-moz-linear-gradient(top,#fff 0%,#eee 100%);background-image:linear-gradient(to bottom,#fff 0%,#eee 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffeeeeee',GradientType=0);border:1px solid #ddd;box-sizing:border-box;border-radius:1rem/2;}.shortcuts .shortcut .shortcut-icon{width:100%;margin-top:0;margin-bottom:0;font-size:2rem;color:#333;}.shortcuts .shortcut-sm .shortcut-icon{width:100%;margin-top:0;margin-bottom:0;font-size:2rem;color:#333;}.shortcuts .shortcut:hover{background:#e8e8e8;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fafafa),to(#e1e1e1));background-image:-webkit-linear-gradient(top,#fafafa,0%,#e1e1e1,100%);background-image:-moz-linear-gradient(top,#fafafa 0%,#e1e1e1 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#e1e1e1 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa',endColorstr='#ffe1e1e1',GradientType=0);}.shortcuts .shortcut-sm:hover{background:#e8e8e8;background-image:-webkit-gradient(linear,left 0%,left 100%,from(#fafafa),to(#e1e1e1));background-image:-webkit-linear-gradient(top,#fafafa,0%,#e1e1e1,100%);background-image:-moz-linear-gradient(top,#fafafa 0%,#e1e1e1 100%);background-image:linear-gradient(to bottom,#fafafa 0%,#e1e1e1 100%);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffafafa',endColorstr='#ffe1e1e1',GradientType=0);}.shortcuts .shortcut:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125);}.shortcuts .shortcut-sm:active{box-shadow:inset 0 3px 5px rgba(0,0,0,.125);}.shortcuts .shortcut:hover .shortcut-icon{color:#c93;}.shortcuts .shortcut-sm:hover .shortcut-icon{color:#666;}.shortcuts .shortcut-label{display:block;margin-top:.75em;font-weight:400;color:#666;}@media(max-width:640px){.shortcuts .shortcut{min-width:8rem;min-height:4rem;}body{font-size:.8em;}}
\ No newline at end of file
diff --git a/README.md b/README.md
index 138010e..0f9a785 100644
--- a/README.md
+++ b/README.md
@@ -103,6 +103,12 @@ La sua funzione è presentare le informazioni realtime e di eprmettere il recupe
Il tutto con un focus "locale" (è un singolo impianto/macchina) e limitato nel tempo x la quantità di dati di dettaglio e/o statistici mantenuti.
+da installare dotnet 6 hosting:
+
+
+choco install dotnet-6.0-windowshosting
+
+
## MP.MONO.SIM
E' una console app pacchettizzata copme single file app (che richiede installazione dotNet framework...) fatta x simulare i dati in fase di sviluppo UI. Per testare è stata installata su IOB-WIN-SIMULA, come servizio tramite nssm.
diff --git a/README.pdf b/README.pdf
index 6b97638..870c949 100644
Binary files a/README.pdf and b/README.pdf differ
diff --git a/obfuscar.xml b/obfuscar.xml
deleted file mode 100644
index 3fd4f54..0000000
--- a/obfuscar.xml
+++ /dev/null
@@ -1,8 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/obfuscate.ps1 b/obfuscate.ps1
deleted file mode 100644
index 3c841ed..0000000
--- a/obfuscate.ps1
+++ /dev/null
@@ -1,14 +0,0 @@
-$testString = dotnet tool list -g | Select-String -Pattern "obfuscar.globaltool"
-
-if($testString -eq $null)
-{
- Write-Output("Installing obfuscar as global tool")
- dotnet tool install --global Obfuscar.GlobalTool --version 2.2.33
-}
-else
-{
- Write-Output("Obfuscar already installed!")
- #dotnet tool update --global Obfuscar.GlobalTool --version 2.2.33
-}
-
-obfuscar.console obfuscar.xml
\ No newline at end of file