Skip to content

Commit

Permalink
Version 3.0.2 Build 5420
Browse files Browse the repository at this point in the history
  • Loading branch information
dtechsrv committed Dec 5, 2019
1 parent 0e65e47 commit d9ce217
Show file tree
Hide file tree
Showing 10 changed files with 112 additions and 67 deletions.
10 changes: 8 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
A simple system information and real-time network monitoring utility.\
This utility reads all system information directly from WMI database.

## Current stable version: 3.0.1 Build 5410 (2019-11-27)
## Current stable version: 3.0.2 Build 5420 (2019-12-05)

![](Screenshots/SINMx86_LoadSplash.png)

Expand All @@ -14,7 +14,7 @@ __Supported languages:__ English, Hungarian,\
__Compilation environment:__ Microsoft Visual Basic 2013 (Community, Update 5),\
__Source author:__ Gábor Deé (dtech),\
__License:__ GNU General Public License v2.0,\
__Supported clients operating systems:__ Microsoft Windows XP SP3 / Vista / 7 / 8 / 8.1 / 10,\
__Supported operating systems:__ Microsoft Windows 2000 SP4, XP SP3, Server 2003/XP x64 SP2, Vista, 7, 8, 8.1, 10,\
__Requirements:__ Microsoft .NET Framework 3.5 (Minimum required: 2.0 SP2).

## Screenshot
Expand All @@ -23,6 +23,12 @@ __Requirements:__ Microsoft .NET Framework 3.5 (Minimum required: 2.0 SP2).

## Changelog since version 2.1.0 (Hungarian only)

__2019-12-05 - Version 3.0.2 / Build 5420 (stable)__

- Hiányzó processzor név patch lekezelésének javítása (Windows 2000),
- Átlagsebesség megjelenítése a diagramon a jelenlegi sebesség helyett,
- S.M.A.R.T értékek korrekciója: üzemórák konverziójának javítása.

__2019-11-27 - Version 3.0.1 / Build 5410 (stable)__

- Cellaszélesség beállítása az infó ablakokban, a gördítősáv figyelembevételével,
Expand Down
26 changes: 11 additions & 15 deletions SINMx86/CPUInfo.vb
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
Imports System.Convert
Imports System.Management
Imports Microsoft.Win32

Imports SINMx86.Functions
Imports SINMx86.Localization
Expand All @@ -8,7 +9,7 @@ Imports SINMx86.Localization
Public Class CPUInfo

' WMI feldolgozási objektumok
Public objPR, objPE As ManagementObjectSearcher
Public objPR As ManagementObjectSearcher
Public objMgmt As ManagementObject

' CPU-infó tábla változói
Expand All @@ -28,6 +29,9 @@ Public Class CPUInfo
Dim L2Cache(2) As Double ' Level 2 cache mérete
Dim L3Cache(2) As Double ' Level 3 cache mérete

' CPU infó registry elérési útja (Csak olvasásra!)
Dim CPUInfoPath As RegistryKey = Registry.LocalMachine.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0", False)

' Sztring cserék változói (eredeti, csere)
Dim NameSearch() As String = {"MHz", "GHz"}
Dim NameReplace() As String = {" MHz", " GHz"}
Expand Down Expand Up @@ -97,18 +101,10 @@ Public Class CPUInfo

' WinXP/2003 CPU nevének javítása (KB953955)
' Megjegyzés: Mivel minden processzor neve egyezik, ezért csak az első kerül beállításra.
If OSVersion(0) <= 6 Then

' WMI lekérdezés: Win32_PnPEntity -> Processzorok listája
objPE = New ManagementObjectSearcher("SELECT Caption FROM Win32_PnPEntity WHERE ClassGuid='{50127DC3-0F36-415E-A6CC-4CB3BE910B65}'")
If OSVersion(0) < 6 Then

' Értékek beállítása -> CPU neve (Csak az első!)
For Each Me.objMgmt In objPE.Get()
While CPUCount < 1
CorrString = RemoveParentheses(objMgmt("Caption"))
CPUCount += 1
End While
Next
' Registry érték lekérdezése
CorrString = RemoveParentheses(CPUInfoPath.GetValue("ProcessorNameString"))

End If

Expand Down Expand Up @@ -137,7 +133,7 @@ Public Class CPUInfo
NameString = RemoveParentheses(objMgmt("Name"))

' Értékek összehasonlítása (Ha eltér, akkor felül lesz írva!)
If OSVersion(0) <= 6 Then
If OSVersion(0) < 6 Then
If NameString <> CorrString Then NameString = CorrString
End If

Expand All @@ -161,8 +157,8 @@ Public Class CPUInfo
CPUTableAddRow(GetLoc("CPUCores"), CPUCores.ToString, Nothing)
CPUTableAddRow(GetLoc("CPUThreads"), CPUThreads.ToString, Nothing)

' Gyártói "lustaság" sztingek keresése
If Not CheckStrContain(objMgmt("SocketDesignation"), Blacklist, False) Then
' Gyártói "lustaság" és üres szting keresése
If Not CheckStrContain(objMgmt("SocketDesignation"), Blacklist, False) And RemoveSpaces(objMgmt("SocketDesignation")) <> Nothing Then
CPUTableAddRow(GetLoc("CPUSocket"), objMgmt("SocketDesignation"), Nothing)
End If

Expand Down
2 changes: 1 addition & 1 deletion SINMx86/Include/Functions.vb
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ Public Class Functions
"United Microelectronics Corporation", "VIA Technologies Inc.", "DM&P Electronics"}

' Beállításjegyzék változói
Public Shared RegPath As RegistryKey = Registry.CurrentUser.OpenSubKey("Software\\" + MyName, True)
Public Shared RegPath As RegistryKey = Registry.CurrentUser.OpenSubKey("SOFTWARE\\" + MyName, True)

' Checkboxok és menüelemek változói
Public Shared CheckedSplashDisable, CheckedTopMost, CheckedNoQuitAsk, CheckedMinToTray As Boolean
Expand Down
4 changes: 4 additions & 0 deletions SINMx86/Include/Localization.vb
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ Public Class Localization
AddLoc("Time", "Time")
AddLoc("Update", "Update")
AddLoc("Current", "Current")
AddLoc("Average", "Average")
AddLoc("Peak", "Peak")
AddLoc("DateFormat", "dddd, dd MMMM yyyy, h:mm:ss tt")
AddLoc("ChartDown", "Download speed")
Expand All @@ -68,6 +69,7 @@ Public Class Localization
AddLoc("Hostname", "Hostname")
AddLoc("Uptime", "Uptime")
AddLoc("Date", "Date")
AddLoc("Years", "years")
AddLoc("Days", "days")
AddLoc("Hours", "hours")
AddLoc("Mins", "minutes")
Expand Down Expand Up @@ -302,6 +304,7 @@ Public Class Localization
AddLoc("Time", "Idő")
AddLoc("Update", "Frissítés")
AddLoc("Current", "Jelenlegi")
AddLoc("Average", "Átlag")
AddLoc("Peak", "Csúcs")
AddLoc("DateFormat", "yyyy. MMMM d. dddd, H:mm:ss")
AddLoc("ChartDown", "Letöltési sebesség")
Expand All @@ -315,6 +318,7 @@ Public Class Localization
AddLoc("Hostname", "Hosztnév")
AddLoc("Uptime", "Futási idő")
AddLoc("Date", "Dátum")
AddLoc("Years", "év")
AddLoc("Days", "nap")
AddLoc("Hours", "óra")
AddLoc("Mins", "perc")
Expand Down
71 changes: 47 additions & 24 deletions SINMx86/MainWindow.vb
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ Imports SINMx86.Localization
Public Class MainWindow

' WMI feldolgozási objektumok
Public objOS, objBB, objCS, objBS, objBT, objPR, objPE, objPM, objNA, objNI, objNC, objVC, objDD, objSM, objDP, objLP, objLD As ManagementObjectSearcher
Public objOS, objBB, objCS, objBS, objBT, objPR, objPM, objNA, objNI, objNC, objVC, objDD, objSM, objDP, objLP, objLD As ManagementObjectSearcher
Public objMgmt, objRes As ManagementObject

' Főablak változói
Expand All @@ -31,6 +31,7 @@ Public Class MainWindow
Public PartInfo(32) As String ' Partíció információk (kiírásokhoz)
Public VideoName(32) As String ' Videókártyák nevei (kiírásokhoz)
Public TraffResolution As Int32 = 60 ' Diagramon jelzett értékek száma (ennyi időegységre van felosztva a diagram)
Public SpeedCounter As Int32 = 0 ' Sebesség értékek száma (az átlagszámításhoz szükséges osztó)
Public VerticalGrids As Int32 = 1 ' Fuggőleges osztóvonalak száma (másodpercre vetítve)
Public GridSlip As Int32 ' Függőleges rács eltolás
Public GridUpdate As Boolean = False ' Rácsfrissítés engedélyezése (kell az eltolás számításához)
Expand Down Expand Up @@ -474,7 +475,7 @@ Public Class MainWindow
Dim DeleteCount As Int32 ' Törlendő sztring sorszáma
Dim OSBuild As String = Nothing ' OS Build (Win10+)

' Registry elérési útja (Csak olvasásra!)
' OS infó registry elérési útja (Csak olvasásra!)
Dim OSInfoPath As RegistryKey = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion", False)

' Névből törlendő sztringek tömbje
Expand Down Expand Up @@ -1262,6 +1263,9 @@ Public Class MainWindow
Upload(Count) = Upload(0)
Next

' Mérési számláló alaphelyzetbe állítása
SpeedCounter = 0

Else

' Korábbi értékek hátrébb tolása 1 hellyel
Expand All @@ -1270,6 +1274,11 @@ Public Class MainWindow
Upload(Count) = TraffUpArray(Count - 1)
Next

' Mérési számláló növelése
If SpeedCounter < TraffResolution Then
SpeedCounter += 1
End If

End If

' Publikus tömb felülírása a jelenlegi értékekkel
Expand Down Expand Up @@ -1320,6 +1329,9 @@ Public Class MainWindow
Dim SearchCount As Int32 ' Keresendő sztring sorszáma
Dim DeleteCount As Int32 ' Törlendő sztring sorszáma

' CPU infó registry elérési útja (Csak olvasásra!)
Dim CPUInfoPath As RegistryKey = Registry.LocalMachine.OpenSubKey("HARDWARE\\DESCRIPTION\\System\\CentralProcessor\\0", False)

' Sztring cserék változói (eredeti, csere)
Dim SearchList() As String = {"MHz", "GHz"}
Dim ReplaceList() As String = {" MHz", " GHz"}
Expand All @@ -1341,19 +1353,11 @@ Public Class MainWindow
Next

' WinXP/2003 CPU nevének javítása (KB953955)
' Megjegyzés: Mivel minden processzor neve egyezik, ezért csak az első kerül beállításra. Ha eltér, akkor az összes ezzele a névvel lesz felülírva!
If OSVersion(0) <= 6 Then

' WMI lekérdezés: Win32_PnPEntity -> Processzorok listája
objPE = New ManagementObjectSearcher("SELECT Caption FROM Win32_PnPEntity WHERE ClassGuid='{50127DC3-0F36-415E-A6CC-4CB3BE910B65}'")

' Értékek beállítása -> CPU neve (Csak az első!)
For Each Me.objMgmt In objPE.Get()
While FixNumber < 1
FixString = RemoveParentheses(objMgmt("Caption"))
FixNumber += 1
End While
Next
' Megjegyzés: Mivel minden processzor neve egyezik, ezért csak az első kerül beállításra. Ha eltér, akkor az összes ezzel a névvel lesz felülírva!
If OSVersion(0) < 6 Then

' Registry érték lekérdezése
FixString = RemoveParentheses(CPUInfoPath.GetValue("ProcessorNameString"))

' Értékek összehasonlítása
If CPUString(0) <> FixString Then
Expand Down Expand Up @@ -2301,7 +2305,10 @@ Public Class MainWindow
Dim IntervalValue As Int32 ' Időintervallum formázatlan értéke (másodperc)
Dim IntervalTag As String = Nothing ' Időintervallum egységesített értéke (óra, perc, másodperc)
Dim TextSpacing() As Int32 = {160, 295} ' Másod és harmadszintű kiírások vízszintes eltolása
Dim DownCurrentConv(2), UpCurrentConv(2) As Double ' Aktuális le- és feltöltési konvertált értékek tömbje (érték, prefixum sorszáma)
Dim DownAverageSum As Double = 0 ' Átlagos letöltési sebességértékek összege (átlagoláshoz)
Dim UpAverageSum As Double = 0 ' Átlagos feltöltési sebességértékek összege (átlagoláshoz)
Dim DownAverageConv(2), UpAverageConv(2) As Double ' Átlagos le- és feltöltési konvertált értékek tömbje (érték, prefixum sorszáma)
Dim AverageSumCount As Int32 ' Átlagszámítási ciklusszámláló

' *** SZÖVEGES KIÍRÁSOK: Interfész (1. sor) ***

Expand Down Expand Up @@ -2357,12 +2364,20 @@ Public Class MainWindow
Chart.DrawLines(Pens.Lime, SignLine)
Chart.DrawString(GetLoc("ChartDown"), SignFont, Brushes.Lime, TextOffset(0) + 25, TextOffset(1))

' Jelenlegi és csúcssebesség kiírása (vagy, ha ki van kapcsolva, akkor az erre vonatkozó szöveg)
DownCurrentConv = ScaleConversion(ChartDownNumbers(0), TraffDigit, True)
' Átlagolás és konvertálás (Ha a számláló nem nullán áll!)
If SpeedCounter = 0 Then
DownAverageConv = ScaleConversion(0, 0, True)
Else
For AverageSumCount = 0 To (SpeedCounter - 1)
DownAverageSum += ChartDownNumbers(AverageSumCount)
Next
DownAverageConv = ScaleConversion(DownAverageSum / SpeedCounter, 2, True)
End If

' Átlag- és csúcssebesség kiírása (vagy, ha ki van kapcsolva, akkor az erre vonatkozó szöveg)
If CheckedDownChart And InterfacePresent Then
Chart.DrawString(GetLoc("Current") + ": " + FixNumberFormat(DownCurrentConv(0), TraffDigit, True) + " " +
BytePrefix(DownCurrentConv(1)) + "B/s", SignFont, Brushes.DarkGreen, TextOffset(0) + TextSpacing(0), TextOffset(1))
Chart.DrawString(GetLoc("Average") + ": " + FixNumberFormat(DownAverageConv(0), TraffDigit, True) + " " +
BytePrefix(DownAverageConv(1)) + "B/s", SignFont, Brushes.DarkGreen, TextOffset(0) + TextSpacing(0), TextOffset(1))
Chart.DrawString(GetLoc("Peak") + ": " + FixNumberFormat(DownPeakConv(0), TraffDigit, True) + " " +
BytePrefix(DownPeakConv(1)) + "B/s", SignFont, Brushes.DarkGreen, TextOffset(0) + TextSpacing(1), TextOffset(1))
Else
Expand All @@ -2384,11 +2399,19 @@ Public Class MainWindow
Chart.DrawLines(Pens.Red, SignLine)
Chart.DrawString(GetLoc("ChartUp"), SignFont, Brushes.Red, TextOffset(0) + 25, TextOffset(1))

' Jelenlegi és csúcssebesség kiírása (vagy, ha ki van kapcsolva, akkor az erre vonatkozó szöveg)
UpCurrentConv = ScaleConversion(ChartUpNumbers(0), TraffDigit, True)
' Átlagolás és konvertálás (Ha a számláló nem nullán áll!)
If SpeedCounter = 0 Then
UpAverageConv = ScaleConversion(0, 0, True)
Else
For AverageSumCount = 0 To (SpeedCounter - 1)
UpAverageSum += ChartUpNumbers(AverageSumCount)
Next
UpAverageConv = ScaleConversion(UpAverageSum / SpeedCounter, 2, True)
End If

' Átlag- és csúcssebesség kiírása (vagy, ha ki van kapcsolva, akkor az erre vonatkozó szöveg)
If CheckedUpChart And InterfacePresent Then
Chart.DrawString(GetLoc("Current") + ": " + FixNumberFormat(UpCurrentConv(0), TraffDigit, True) + " " +
Chart.DrawString(GetLoc("Average") + ": " + FixNumberFormat(UpAverageConv(0), TraffDigit, True) + " " +
BytePrefix(UpPeakConv(1)) + "B/s", SignFont, Brushes.DarkRed, TextOffset(0) + TextSpacing(0), TextOffset(1))
Chart.DrawString(GetLoc("Peak") + ": " + FixNumberFormat(UpPeakConv(0), TraffDigit, True) + " " +
BytePrefix(UpPeakConv(1)) + "B/s", SignFont, Brushes.DarkRed, TextOffset(0) + TextSpacing(1), TextOffset(1))
Expand Down Expand Up @@ -3256,7 +3279,7 @@ Public Class MainWindow
End Sub

' *** ELJÁRÁS: Buboréküzenetre kattintás kezelése ***
' Eseményvezérelt: MainNotifyIcon.BalloonTipClicked -> Klikk (Taskbar ikon buboréküzenet)
' Eseményvezérelt: MaincpuNotifyIcon.BalloonTipClicked -> Klikk (Taskbar ikon buboréküzenet)
Private Sub MainNotifyIcon_BalloonTipClicked(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MainNotifyIcon.BalloonTipClicked

' Kép megnyitása, a buboréközenet fájl mentésére vonatkozik (egyébként a főablak előtérbe hozása)
Expand Down
4 changes: 2 additions & 2 deletions SINMx86/My Project/AssemblyInfo.vb
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ Imports System.Runtime.InteropServices
' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")>

<Assembly: AssemblyVersion("3.0.1.5410")>
<Assembly: AssemblyFileVersion("3.0.1.5410")>
<Assembly: AssemblyVersion("3.0.2.5420")>
<Assembly: AssemblyFileVersion("3.0.2.5420")>

<Assembly: NeutralResourcesLanguageAttribute("hu-HU")>
Loading

0 comments on commit d9ce217

Please sign in to comment.