Minor change
This commit is contained in:
parent
53a9bc5fe0
commit
40f88649f1
2
.gitignore
vendored
2
.gitignore
vendored
@ -1,4 +1,4 @@
|
|||||||
|
CREPLSETUP.creplscript
|
||||||
# Created by https://www.gitignore.io/api/csharp,visualstudio
|
# Created by https://www.gitignore.io/api/csharp,visualstudio
|
||||||
# Edit at https://www.gitignore.io/?templates=csharp,visualstudio
|
# Edit at https://www.gitignore.io/?templates=csharp,visualstudio
|
||||||
|
|
||||||
|
@ -41,10 +41,8 @@ namespace CC_Functions.Misc
|
|||||||
func();
|
func();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static T ParseToEnum<T>(string value)
|
public static T ParseToEnum<T>(string value) => (T) Enum.Parse(typeof(T),
|
||||||
{
|
Enum.GetNames(typeof(T)).First(s => s.ToLower() == value.ToLower()));
|
||||||
return (T) Enum.Parse(typeof(T), Enum.GetNames(typeof(T)).First(s => s.ToLower() == value.ToLower()));
|
|
||||||
}
|
|
||||||
|
|
||||||
public static bool? ParseBool(string value) =>
|
public static bool? ParseBool(string value) =>
|
||||||
string.IsNullOrWhiteSpace(value) || value.ToLower() == "Indeterminate"
|
string.IsNullOrWhiteSpace(value) || value.ToLower() == "Indeterminate"
|
||||||
@ -62,5 +60,8 @@ namespace CC_Functions.Misc
|
|||||||
public static bool FALSE(this bool? self) => self == false;
|
public static bool FALSE(this bool? self) => self == false;
|
||||||
|
|
||||||
public static bool NULL(this bool? self) => self == null;
|
public static bool NULL(this bool? self) => self == null;
|
||||||
|
|
||||||
|
public static void RemoveAt<T, G>(this Dictionary<T, G> dict, int index) =>
|
||||||
|
dict.Remove(dict.Keys.OfType<T>().ToArray()[index]);
|
||||||
}
|
}
|
||||||
}
|
}
|
19
Misc/HID.cs
19
Misc/HID.cs
@ -9,8 +9,8 @@ namespace CC_Functions.Misc
|
|||||||
{
|
{
|
||||||
public static class HID
|
public static class HID
|
||||||
{
|
{
|
||||||
|
public static bool forceWindows = false;
|
||||||
private static byte[] _fingerPrint;
|
private static byte[] _fingerPrint;
|
||||||
|
|
||||||
private static readonly string HIDClasses = @"Win32_Processor:UniqueId
|
private static readonly string HIDClasses = @"Win32_Processor:UniqueId
|
||||||
Win32_Processor:ProcessorId
|
Win32_Processor:ProcessorId
|
||||||
Win32_Processor:Name
|
Win32_Processor:Name
|
||||||
@ -25,7 +25,7 @@ Win32_BaseBoard:Model
|
|||||||
Win32_BaseBoard:Manufacturer
|
Win32_BaseBoard:Manufacturer
|
||||||
Win32_BaseBoard:Name
|
Win32_BaseBoard:Name
|
||||||
Win32_BaseBoard:SerialNumber
|
Win32_BaseBoard:SerialNumber
|
||||||
Win32_NetworkAdapterConfiguration:MACAddress:IPEnabled";
|
Win32_NetworkAdapterConfiguration:MACAddress";
|
||||||
|
|
||||||
public static byte[] Value
|
public static byte[] Value
|
||||||
{
|
{
|
||||||
@ -34,9 +34,9 @@ Win32_NetworkAdapterConfiguration:MACAddress:IPEnabled";
|
|||||||
if (_fingerPrint == null)
|
if (_fingerPrint == null)
|
||||||
{
|
{
|
||||||
string fingerprintTmp = "";
|
string fingerprintTmp = "";
|
||||||
if (Type.GetType("Mono.Runtime") == null)
|
if (forceWindows || Type.GetType("Mono.Runtime") == null)
|
||||||
{
|
{
|
||||||
HIDClasses.Split('\r').Select(s =>
|
HIDClasses.Split(new[] {"\r\n"}, StringSplitOptions.None).Select(s =>
|
||||||
{
|
{
|
||||||
if (s.StartsWith("\n"))
|
if (s.StartsWith("\n"))
|
||||||
s = s.Remove(0, 1);
|
s = s.Remove(0, 1);
|
||||||
@ -48,8 +48,6 @@ Win32_NetworkAdapterConfiguration:MACAddress:IPEnabled";
|
|||||||
{
|
{
|
||||||
ManagementBaseObject[] array = moc.OfType<ManagementBaseObject>().ToArray();
|
ManagementBaseObject[] array = moc.OfType<ManagementBaseObject>().ToArray();
|
||||||
for (int j = 0; j < array.Length; j++)
|
for (int j = 0; j < array.Length; j++)
|
||||||
{
|
|
||||||
if (s.Length > 2 && array[j][s[2]].ToString() != "True") continue;
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
fingerprintTmp += array[j][s[1]].ToString();
|
fingerprintTmp += array[j][s[1]].ToString();
|
||||||
@ -59,11 +57,10 @@ Win32_NetworkAdapterConfiguration:MACAddress:IPEnabled";
|
|||||||
{
|
{
|
||||||
Console.WriteLine("Failed to read property");
|
Console.WriteLine("Failed to read property");
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
else //Linux implementation. This will not work if you are using Mono on windows or do not have uname and lscpu available
|
else //Linux implementation. This will not work if you are using Mono on windows or do not have "uname", "lscpu" and "id" available
|
||||||
{
|
{
|
||||||
Process p = new Process
|
Process p = new Process
|
||||||
{
|
{
|
||||||
@ -83,8 +80,12 @@ Win32_NetworkAdapterConfiguration:MACAddress:IPEnabled";
|
|||||||
p.Start();
|
p.Start();
|
||||||
fingerprintTmp += p.StandardOutput.ReadToEnd();
|
fingerprintTmp += p.StandardOutput.ReadToEnd();
|
||||||
p.WaitForExit();
|
p.WaitForExit();
|
||||||
|
p.StartInfo.FileName = "ip";
|
||||||
|
p.StartInfo.Arguments = "link";
|
||||||
|
p.Start();
|
||||||
|
fingerprintTmp += p.StandardOutput.ReadToEnd();
|
||||||
|
p.WaitForExit();
|
||||||
}
|
}
|
||||||
|
|
||||||
using (MD5 sec = new MD5CryptoServiceProvider())
|
using (MD5 sec = new MD5CryptoServiceProvider())
|
||||||
{
|
{
|
||||||
byte[] bt = Encoding.ASCII.GetBytes(fingerprintTmp);
|
byte[] bt = Encoding.ASCII.GetBytes(fingerprintTmp);
|
||||||
|
Reference in New Issue
Block a user