Skip to content

Commit 006cc5f

Browse files
committed
* Added missing code comments
* Minor code changes
1 parent 15db88d commit 006cc5f

File tree

5 files changed

+55
-61
lines changed

5 files changed

+55
-61
lines changed

MemPlus/Business/Classes/RAM/RamAnalyzer.cs

Lines changed: 0 additions & 46 deletions
This file was deleted.
Lines changed: 45 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,57 @@
1-
using System;
2-
using System.Collections.Generic;
3-
using System.Linq;
1+
using System.Collections.Generic;
2+
using System.Management;
43
using System.Security.Principal;
5-
using System.Text;
6-
using System.Threading.Tasks;
4+
using MemPlus.Business.Classes.RAM;
75

86
namespace MemPlus.Business.Classes.UTILS
97
{
8+
/// <summary>
9+
/// Static class containing utility code that can be used by different objects
10+
/// </summary>
1011
internal static class Utils
1112
{
13+
/// <summary>
14+
/// Check if the application is running with Administrative rights
15+
/// </summary>
16+
/// <returns>True if the application has Administrative rights, otherwise false</returns>
1217
internal static bool IsAdministrator()
1318
{
1419
return new WindowsPrincipal(WindowsIdentity.GetCurrent()).IsInRole(WindowsBuiltInRole.Administrator);
1520
}
21+
22+
/// <summary>
23+
/// Retrieve RAM information
24+
/// </summary>
25+
/// <returns>A list of RAM information</returns>
26+
internal static List<RamStick> GetRamSticks()
27+
{
28+
List<RamStick> ramSticks = new List<RamStick>();
29+
30+
ConnectionOptions connection = new ConnectionOptions { Impersonation = ImpersonationLevel.Impersonate };
31+
32+
ManagementScope scope = new ManagementScope("\\root\\CIMV2", connection);
33+
scope.Connect();
34+
35+
ObjectQuery query = new ObjectQuery("SELECT * FROM Win32_PhysicalMemory");
36+
37+
ManagementObjectSearcher searcher = new ManagementObjectSearcher(scope, query);
38+
39+
// ReSharper disable once PossibleInvalidCastExceptionInForeachLoop
40+
foreach (ManagementObject queryObj in searcher.Get())
41+
{
42+
RamStick stick = new RamStick();
43+
foreach (PropertyData data in queryObj.Properties)
44+
{
45+
if (data.Value != null)
46+
{
47+
stick.AddRamData(new RamData(data.Name, data.Value.ToString()));
48+
}
49+
}
50+
51+
ramSticks.Add(stick);
52+
}
53+
54+
return ramSticks;
55+
}
1656
}
1757
}

MemPlus/MemPlus.csproj

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,6 @@
8787
<SubType>Designer</SubType>
8888
</ApplicationDefinition>
8989
<Compile Include="Business\Classes\EXPORT\ExportTypes.cs" />
90-
<Compile Include="Business\Classes\RAM\RamAnalyzer.cs" />
9190
<Compile Include="Business\Classes\RAM\RamData.cs" />
9291
<Compile Include="Business\Classes\RAM\RamSticksExporter.cs" />
9392
<Compile Include="Business\Classes\RAM\RamStick.cs" />

MemPlus/Views/Windows/AnalyzerWindow.xaml.cs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
using MemPlus.Business.Classes.GUI;
77
using MemPlus.Business.Classes.LOG;
88
using MemPlus.Business.Classes.RAM;
9+
using MemPlus.Business.Classes.UTILS;
910
using Microsoft.Win32;
1011

1112
namespace MemPlus.Views.Windows
@@ -51,7 +52,7 @@ private void RefreshRamData()
5152
try
5253
{
5354
TrvRam.Items.Clear();
54-
List<RamStick> ramSticks = RamAnalyzer.GetRamSticks();
55+
List<RamStick> ramSticks = Utils.GetRamSticks();
5556

5657
if (ramSticks == null || ramSticks.Count == 0)
5758
{
@@ -159,16 +160,16 @@ private void BtnExport_OnClick(object sender, RoutedEventArgs e)
159160
{
160161
//Filterindex starts at 1
161162
case 1:
162-
RamDataExporter.ExportText(sfd.FileName, RamAnalyzer.GetRamSticks());
163+
RamDataExporter.ExportText(sfd.FileName, Utils.GetRamSticks());
163164
break;
164165
case 2:
165-
RamDataExporter.ExportHtml(sfd.FileName, RamAnalyzer.GetRamSticks());
166+
RamDataExporter.ExportHtml(sfd.FileName, Utils.GetRamSticks());
166167
break;
167168
case 3:
168-
RamDataExporter.ExportCsv(sfd.FileName, RamAnalyzer.GetRamSticks());
169+
RamDataExporter.ExportCsv(sfd.FileName, Utils.GetRamSticks());
169170
break;
170171
case 4:
171-
RamDataExporter.ExportExcel(sfd.FileName, RamAnalyzer.GetRamSticks());
172+
RamDataExporter.ExportExcel(sfd.FileName, Utils.GetRamSticks());
172173
break;
173174
}
174175
MessageBox.Show("Exported all data!", "MemPlus", MessageBoxButton.OK, MessageBoxImage.Information);

MemPlus/Views/Windows/MainWindow.xaml.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -600,16 +600,16 @@ private void ExportRamAnalyzerDataMenuItem_OnClick(object sender, RoutedEventArg
600600
{
601601
//Filterindex starts at 1
602602
case 1:
603-
RamDataExporter.ExportText(sfd.FileName, RamAnalyzer.GetRamSticks());
603+
RamDataExporter.ExportText(sfd.FileName, Utils.GetRamSticks());
604604
break;
605605
case 2:
606-
RamDataExporter.ExportHtml(sfd.FileName, RamAnalyzer.GetRamSticks());
606+
RamDataExporter.ExportHtml(sfd.FileName, Utils.GetRamSticks());
607607
break;
608608
case 3:
609-
RamDataExporter.ExportCsv(sfd.FileName, RamAnalyzer.GetRamSticks());
609+
RamDataExporter.ExportCsv(sfd.FileName, Utils.GetRamSticks());
610610
break;
611611
case 4:
612-
RamDataExporter.ExportExcel(sfd.FileName, RamAnalyzer.GetRamSticks());
612+
RamDataExporter.ExportExcel(sfd.FileName, Utils.GetRamSticks());
613613
break;
614614
}
615615
MessageBox.Show("All data has been exported!", "MemPlus", MessageBoxButton.OK, MessageBoxImage.Information);

0 commit comments

Comments
 (0)