Skip to content

Instantly share code, notes, and snippets.

@cuteribs-1
Last active August 10, 2021 18:13
Show Gist options
  • Save cuteribs-1/69802a6fd6337c84ed7ff06a5f66eec9 to your computer and use it in GitHub Desktop.
Save cuteribs-1/69802a6fd6337c84ed7ff06a5f66eec9 to your computer and use it in GitHub Desktop.
void Main()
{
using var mmf = MemoryMappedFile.OpenExisting("AIDA64_SensorValues");
using var accessor = mmf.CreateViewAccessor();
var bytes = new byte[accessor.Capacity];
accessor.ReadArray(0, bytes, 0, bytes.Length);
using var sw = new StreamWriter(@"F:\Green\aida64\shared-memory.xml");
sw.WriteLine(Encoding.ASCII.GetString(bytes).Trim());
return;
var xmlDoc = new XmlDocument();
xmlDoc.Load(@"F:\Green\aida64\shared-memory.xml");
var groups = xmlDoc.DocumentElement.ChildNodes.OfType<XmlNode>().GroupBy(n => n.Name).Select(g => new {
Group = g.Key,
Values = g.Select(n => new Sensor
{
Id = n.SelectSingleNode("id").InnerText,
Label = n.SelectSingleNode("label").InnerText,
Value = n.SelectSingleNode("value").InnerText,
})
});
var sensors = new
{
Sys = groups.First(g => g.Group == "sys"),
Temp =groups.First(g => g.Group == "temp"),
Fan = groups.First(g => g.Group == "fan"),
Duty =groups.First(g => g.Group == "duty"),
Volt =groups.First(g => g.Group == "volt"),
Pwr = groups.First(g => g.Group == "pwr")
};
var json = JsonConvert.SerializeObject(sensors);
json.Dump();
}
// You can define other methods, fields, classes and namespaces here
// GPUZShMem
class Sensor
{
public string Id { get; set; }
public string Label { get; set; }
public string Value { get; set; }
}
@cuteribs-1
Copy link
Author

1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment