如何在C或asm中获取硬盘序列号(不是每次重新安装Windows时的音量#),没有wmi(导致wmi需要管理员权限)。任何线索都会有所帮助,因为我现在在没有wmi的情况下在网上找不到任何东西,在搜索的日子里...谢谢。 编辑:对于Windows系统
答案 0 :(得分:1)
请尝试我的开源工具DiskId32,该工具的源代码也是http://www.winsim.com/diskid32/diskid32.html。我目前只有Win32版本。也许有一天我会添加一个Win64版本。
答案 1 :(得分:0)
硬件驱动器序列号和其他有关硬盘驱动器的信息,如固件版本等,只有在我知道的情况下才能使用SMART获得,并且需要特殊的ioctl到块设备节点(/ dev / sda或/ dev / sdb),普通用户通常无法使用。
我知道有一个名为smartctl的工具就是这样做的:
sudo smartctl -i /dev/sda
也存在类似的工具(hdparm,lshw等)。
至于尝试在没有特权用户的情况下弄清楚这些信息,只有当它通过/ proc或/ sys公开时才有可能,我非常怀疑当前的SATA块设备驱动程序是否已经完成。< / p>