//获得网卡序列号----MAc地址 public string GetMoAddress() { try { //读取硬盘序列号 ManagementObject disk; disk = new ManagementObject("win32_logicaldisk.deviceid=\"c:\""); disk.Get(); string MoAddress = "BD-CNSOFTWEB"; ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration"); ManagementObjectCollection moc2 = mc.GetInstances(); foreach (ManagementObject mo in moc2) { if ((bool)mo["IPEnabled"] == true) { string a = mo["MacAddress"].ToString(); string c = disk.GetPropertyValue("VolumeSerialNumber").ToString(); MoAddress = "BD-" + a + "-" + c + "-CNSOFTWEB"; break; } } return MoAddress.ToString().Replace(":", ""); } catch { return "BD-ERR-CNSOFTWEB"; } }
public string GetHDDSerialNumber() { ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid=\"C:\""); disk.Get(); return(disk["VolumeSerialNumber"].ToString()); }
/// <summary> /// 获取打印机状态 /// </summary> /// <returns></returns> public static int getStatus(String printer_name) { string path = @"win32_printer.DeviceId='" + printer_name + "'"; ManagementObject printer = new ManagementObject(path); printer.Get(); return(Convert.ToInt32(printer.Properties["PrinterStatus"].Value)); }
//获取设备硬件卷号 public static string get_Disk_VolumeSerialNumber() { ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration"); ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid=\"d:\""); disk.Get(); return(disk.GetPropertyValue("VolumeSerialNumber").ToString()); }
public static string GetDiskVolumeSerialNumber() { ManagementClass managementClass = new ManagementClass("Win32_NetworkAdapterConfiguration"); ManagementObject managementObject = new ManagementObject("win32_logicaldisk.deviceid=\"c:\""); managementObject.Get(); return(managementObject.GetPropertyValue("VolumeSerialNumber").ToString()); }
private static ManagementObject GetServiceManagementObjectByName(string name) { using (var mngObj = new ManagementObject($"Win32_Service.Name='{name}'")) { mngObj.Get(); return(mngObj); } }
public void Set_Property_Win32_ComputerSystem() { using (ManagementObject obj = new ManagementObject($"Win32_ComputerSystem.Name=\"{Environment.MachineName}\"")) { obj.Get(); obj.SetPropertyValue("Workgroup", "WmiTests"); } }
/// <summary> /// Computes the amount of free disk space /// <para>Units is in bytes</para> /// </summary> /// <param name="drive">This parameter is the drive volume to be checked</param> /// <returns>Amount of disk space in bytes, represented by 64-bit unsigned integer</returns> private ulong GetFreeDiskSpaceInBytes(string drive) { ManagementObject disk = new ManagementObject( "win32_logicaldisk.deviceid=\"" + drive + ":\""); disk.Get(); return((ulong)disk["FreeSpace"]); }
static void Main(string[] args) { ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid=\"c:\""); disk.Get(); Console.WriteLine(disk["VolumeName"]); Console.ReadLine(); }
public static string getHWID() { ManagementObject dsk = new ManagementObject(@"win32_logicaldisk.deviceid=""c:"""); dsk.Get(); hwid = dsk["VolumeSerialNumber"].ToString(); return(hwid); }
/// <summary> /// C盘序列号 /// </summary> /// <returns></returns> public static string GetDiskVolumeSerialNumber() { ManagementObject disk; disk = new ManagementObject("win32_logicaldisk.deviceid=\"c:\""); disk.Get(); return(disk.GetPropertyValue("VolumeSerialNumber").ToString()); }
public static string Serial() { string HDD = Environment.CurrentDirectory.Substring(0, 1); ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid=\"" + HDD + ":\""); disk.Get(); return(disk["volumeSerialNumber"].ToString()); }
/// <summary> /// Return unique key. /// If there is error in finding the key, will return 0 /// /// For more info on extracting entire system. Refer to project in /// https://www.codeproject.com/Articles/17973/How-To-Get-Hardware-Information-CPU-ID-MainBoard-I /// </summary> /// <returns></returns> public static string GetUniqueID() { ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM Win32_Processor"); // Chain different architecture into one string machineUniqueId = ""; try { // CPU-related serial number foreach (ManagementObject queryObj in searcher.Get()) { machineUniqueId += queryObj["Architecture"].ToString() + "_" + queryObj["Caption"].ToString() + "_" + queryObj["Family"].ToString() + "_" + queryObj["ProcessorId"].ToString() + "_" + // CPU queryObj["SystemName"].ToString(); // Motherboard } // Attach Hardisk serial number string hardiskSerial = ""; try { string winPath = System.IO.Path.GetPathRoot(Environment.SystemDirectory); ManagementObject dsk = new ManagementObject(@"win32_logicaldisk.deviceid=""" + winPath.Substring(0, 1) + @":"""); dsk.Get(); hardiskSerial = dsk["VolumeSerialNumber"].ToString(); } catch { hardiskSerial = ""; } machineUniqueId += "_" + hardiskSerial; // IGNORE THIS PART. MAC can be spoofed /* * // Attach MAC address * String firstMacAddress = NetworkInterface * .GetAllNetworkInterfaces() * .Where(nic => nic.OperationalStatus == OperationalStatus.Up && nic.NetworkInterfaceType != NetworkInterfaceType.Loopback) * .Select(nic => nic.GetPhysicalAddress().ToString()) * .FirstOrDefault(); * * machineUniqueId += "_" + firstMacAddress; */ // Remove empty space with "_" //machineUniqueId = StringEx.Replace(machineUniqueId, " ", "_", StringComparison.CurrentCulture); return(machineUniqueId); } catch { return("0"); } }
/// <summary> /// 获取本计算机唯一的机器码 /// </summary> /// <returns>字符串形式的机器码</returns> public static string GetInfo() { //说明 这个方法所有的获取hwid的行为均在Ring3模式下获取 方法前半部分为WMI 后半部分为S.M.A.R.T.(DeviceIoControl()) //程序依赖kernel32.dll不能运行在wince下 纯c#解决方案几乎不可能在Ring0模式下获取 如果有更高的要求建议加密狗 string unique = ""; //bios名称 unique += HWID.BIOS + "|"; //cpu信息 unique += HWID.CPU + "|"; //硬盘信息 unique += HWID.HDD + "|"; //主板信息 unique += HWID.BaseBoard + "|"; //mac信息 群主建议取消mac计算 这里建议放弃 mac太玄学了 //unique += HWID.MAC + "|"; //是否存在scsi if (HWID.IsServer) { unique += HWID.SCSI + "|"; } //获取系统盘ID 新增 较为稳定 string systempath = Environment.GetEnvironmentVariable("systemdrive");//获取当前系统盘 string win32_logicaldisk = "\"" + systempath + "\""; ManagementObject dsk = new ManagementObject(@"win32_logicaldisk.deviceid=" + win32_logicaldisk); dsk.Get(); unique += dsk["VolumeSerialNumber"].ToString(); unique += "|"; //获取SMBIOS的id https://docs.microsoft.com/zh-cn/windows/desktop/CIMWin32Prov/win32-computersystemproduct ManagementClass cimobject3 = new ManagementClass("Win32_ComputerSystemProduct"); ManagementObjectCollection moc3 = cimobject3.GetInstances(); foreach (ManagementObject mo in moc3) { unique += (string)mo.Properties["UUID"].Value; break; } unique += "|"; WindowsIdentity current = WindowsIdentity.GetCurrent(); WindowsPrincipal windowsPrincipal = new WindowsPrincipal(current); bool IsAdmin = windowsPrincipal.IsInRole(WindowsBuiltInRole.Administrator); //硬盘物理id if (IsAdmin) { var HddInfo = GetHddInfo(); unique += HddInfo.SerialNumber; } SHA1CryptoServiceProvider SHA1 = new SHA1CryptoServiceProvider(); var md5 = SoftBasic.ByteToHexString(SHA1.ComputeHash(Encoding.Unicode.GetBytes(unique))); return(md5.Substring(0, 25)); }
private static string getDiskID() { ManagementObject dsk = new ManagementObject(@"win32_logicaldisk.deviceid=""" + "C" + @":"""); dsk.Get(); string volumeSerial = dsk["VolumeSerialNumber"].ToString(); return(volumeSerial); }
static void ShowServerConnectionProperties(string objectClass) { using (ManagementObject process = new ManagementObject(objectClass)) { process.Get(); PropertyDataCollection processProperties = process.Properties; Console.WriteLine("ConnectionID: {0,6} \tShareName: {1}", processProperties["ConnectionID"].Value, processProperties["ShareName"].Value); } }
private void LoadDescription() { ManagementObject wmiService; wmiService = new ManagementObject("Win32_Service.Name='" + ServiceController.ServiceName + "'"); wmiService.Get(); Description = wmiService["Description"] == null ? "" : wmiService["Description"].ToString(); }
/// <summary> /// Retorna o HDID do Disco local selecionado. /// </summary> /// <returns>HDID</returns> private static string GetHDID() { var dsk = new ManagementObject(@"win32_logicaldisk.deviceid=""" + HDInst + @":"""); dsk.Get(); return(dsk["VolumeSerialNumber"].ToString()); }
//////////////////////////////////////////////////////////////////////////////////////////////////// public static string GetPartitionId(string partition) { ManagementObject dsk = new ManagementObject(@"win32_logicaldisk.deviceid=""" + partition + "\""); dsk.Get(); string diskid = dsk["VolumeSerialNumber"].ToString(); return(diskid); }
public string GetNSerieHD() { string sHD = ""; ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid=\"c:\""); disk.Get(); sHD = disk["VolumeSerialNumber"].ToString(); return(sHD); }
/// <summary> /// 取得设备硬盘的卷标号 /// </summary> /// <returns></returns> public static string GetDiskVolumeSerialNumber() { string osLetter = GetOsLetter();//系统所在盘符,一般为"c:" ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration"); ManagementObject disk = new ManagementObject($"win32_logicaldisk.deviceid=\"{osLetter}\""); disk.Get(); return(disk.GetPropertyValue("VolumeSerialNumber").ToString()); }
private static string GetVolumeSerial() { string drive = "C"; ManagementObject managementObject = new ManagementObject(@"win32_logicaldisk.deviceid=""" + drive + @":"""); managementObject.Get(); return(managementObject["VolumeSerialNumber"].ToString()); }
public string serialHD(string _HD) { ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid=\"" + _HD + ""); disk.Get(); string serial = disk["VolumeSerialNumber"].ToString(); return(serial); }
/// <summary> /// Constant hash specific to machine /// Solution from /// http://stackoverflow.com/questions/3474940/unique-computer-id-c/3474966#3474966 /// </summary> /// <returns></returns> public static string GetUniqueStringID(int size = 20) { if (size > 20) { throw new ArgumentException("Size must be 20 or less"); } string uniqueId; var cpuInfo = string.Empty; try { var cpu = new ManagementClass("win32_processor"); var cpuCol = cpu.GetInstances(); foreach (var o in cpuCol) { var mo = (ManagementObject)o; cpuInfo = mo.Properties["processorID"].Value.ToString(); break; } } catch { } var volumeSerial = string.Empty;; try { const string drive = "C"; var dsk = new ManagementObject( @"win32_logicaldisk.deviceid=""" + drive + @":"""); dsk.Get(); volumeSerial = dsk["VolumeSerialNumber"].ToString(); } catch { } var boardInfo = string.Empty; try { var board = new ManagementClass("Win32_baseboard"); var boardCol = board.GetInstances(); foreach (var bmo in boardCol.Cast <ManagementObject>()) { boardInfo = bmo.Properties["SerialNumber"].Value.ToString(); break; } } catch { } uniqueId = cpuInfo + volumeSerial + boardInfo; return(uniqueId.GetStringHash().Substring(0, size * 2)); }
/// <summary> /// Número de serie del disco duro donde esta instalado el sistema operativo /// </summary> /// <param name="strDriveLetter"></param> /// <returns></returns> public static string GetVolumeSerialSystem() { string strDriveLetter = Environment.SystemDirectory.Substring(0, 1); ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid=\"" + strDriveLetter + ":\""); disk.Get(); return(disk["VolumeSerialNumber"].ToString()); }
private void Login_Load(object sender, EventArgs e) { ManagementObject dsk = new ManagementObject(@"win32_logicaldisk.deviceid=""c:"""); dsk.Get(); hwid = dsk["VolumeSerialNumber"].ToString(); textBox1.Text = hwid; textBox1.TextAlign = HorizontalAlignment.Center; }
private string GetServicePath(string serviceName) { using (ManagementObject wmiService = new ManagementObject("Win32_Service.Name='" + serviceName + "'")) { wmiService.Get(); string currentserviceExePath = wmiService["PathName"].ToString(); return(currentserviceExePath); } }
public static string getSerialNumber() { ManagementObject managementObject = new ManagementObject("win32_logicaldisk.deviceid=\"c:\""); managementObject.Get(); string text = managementObject.GetPropertyValue("VolumeSerialNumber").ToString(); return((Convert.ToInt64(text, 16) ^ Convert.ToInt64("".PadRight(text.Length, 'F'), 16) + 354665879L).ToString("X")); }
public static string GetHardDiskSerialNumber(string drive = "C") { ManagementObject managementObject = new ManagementObject("Win32_LogicalDisk.DeviceID=\"" + drive + ":\""); managementObject.Get(); Console.WriteLine(managementObject["VolumeSerialNumber"].ToString()); return(managementObject["VolumeSerialNumber"].ToString()); }
public static string GetHardDriveId() { var drive = "C"; var dsk = new ManagementObject( @"win32_logicaldisk.deviceid=""" + drive + @":"""); dsk.Get(); return(dsk["VolumeSerialNumber"].ToString()); }
private static string GetHardDiskId() { ManagementObject dsk = new ManagementObject(@"win32_logicaldisk.deviceid=""c:"""); dsk.Get(); string id = dsk["VolumeSerialNumber"].ToString(); return(id); }
public static string GetVolumeSerial(string strDriveLetter) { if( strDriveLetter=="" || strDriveLetter==null) { strDriveLetter="C"; } ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid=\"" + strDriveLetter +":\""); disk.Get(); return disk["VolumeSerialNumber"].ToString(); }
/// <summary> /// 获取机器号码 /// </summary> /// <returns></returns> public static string GetDiskCPUNumber() { string strDiskCPUNumber = ""; // 取得设备硬盘的卷标号 string strDisk = null; ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration"); ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid=\"c:\""); disk.Get(); strDisk = disk.GetPropertyValue("VolumeSerialNumber").ToString(); //获得CPU的序列号 string strCPU = null; ManagementClass myCpu = new ManagementClass("win32_Processor"); ManagementObjectCollection myCpuConnection = myCpu.GetInstances(); foreach (ManagementObject myObject in myCpuConnection) { strCPU = myObject.Properties["Processorid"].Value.ToString(); break; } return strDiskCPUNumber = strCPU + strDisk; }
protected string GetDriveUsageStr(string driveLetter) { string ret=""; try { ManagementObject drive = new ManagementObject("Win32_LogicalDisk.DeviceID=\""+driveLetter+"\""); drive.Get(); UInt64 total=(UInt64)drive["Size"]; UInt64 free=(UInt64)drive["FreeSpace"]; UInt64 used=total-free; total=(total/1024)/1024; used=(used/1024)/1024; free = (free / 1024) / 1024; ret=driveLetter+" free: "+free.ToString()+" Mb used: "+used.ToString()+" Mb / "+total.ToString()+" Mb"; } catch (Exception) { return driveLetter+" (unknown)"; } return ret; }