1
A
回答
3
「簽名」屬性是在Windows XP中引入的,用於用作共享羣集磁盤的磁盤。根據我的理解,它是在磁盤第一次連接到Windows系統時創建的,即使磁盤通過另一個控制器連接(或者在羣集場景中,即使通過另一臺計算機)也不會更改。
有關詳細說明,請參閱MSDN: 創建物理磁盤資源 http://msdn.microsoft.com/en-us/library/aa369328(VS.85).aspx
0
我拿硬盤到另一臺機器,並簽名和PNPDeviceID改變。所以我認爲OS生成這個簽名。
1
我可以通過提供一些關於「Win32_DiskDrive WMI class」的重要細節來幫助您。
將以下代碼複製到您的c#項目中。
public static string HardDiskID()
{
ManagementClass partionsClass = new ManagementClass("Win32_DiskDrive");
ManagementObjectCollection partions = partionsClass.GetInstances();
string hdd = string.Empty;
foreach (ManagementObject partion in partions)
{
hdd = Convert.ToString(partion["SerialNumber"]);
if (hdd != string.Empty)
return hdd;
}
return hdd;
}
注 - 上面的代碼中的「的SerialNumber」字符串可以與下面的任何硬盤屬性替換。
uint16 Availability;
uint32 BytesPerSector;
uint16 Capabilities[];
string CapabilityDescriptions[];
string Caption;
string CompressionMethod;
uint32 ConfigManagerErrorCode;
boolean ConfigManagerUserConfig;
string CreationClassName;
uint64 DefaultBlockSize;
string Description;
string DeviceID;
boolean ErrorCleared;
string ErrorDescription;
string ErrorMethodology;
string FirmwareRevision;
uint32 Index;
datetime InstallDate;
string InterfaceType;
uint32 LastErrorCode;
string Manufacturer;
uint64 MaxBlockSize;
uint64 MaxMediaSize;
boolean MediaLoaded;
string MediaType;
uint64 MinBlockSize;
string Model;
string Name;
boolean NeedsCleaning;
uint32 NumberOfMediaSupported;
uint32 Partitions;
string PNPDeviceID;
uint16 PowerManagementCapabilities[];
boolean PowerManagementSupported;
uint32 SCSIBus;
uint16 SCSILogicalUnit;
uint16 SCSIPort;
uint16 SCSITargetId;
uint32 SectorsPerTrack;
string SerialNumber;
uint32 Signature;
uint64 Size;
string Status;
uint16 StatusInfo;
string SystemCreationClassName;
string SystemName;
uint64 TotalCylinders;
uint32 TotalHeads;
uint64 TotalSectors;
uint64 TotalTracks;
uint32 TracksPerCylinder
0
我認爲兩條評論對於遵循此路徑的任何人都非常重要。
- 可以使用Diskpart工具
- 這是不可靠的通過簽名來訪問它改變 - 見Random value for disk Signature
相關問題
- 1. WMI Win32_DiskDrive功能屬性 - 將UInt16轉換爲字符串
- 2. Win32_DiskDrive和eSATA
- 3. 將win32_logicaldisk映射到win32_diskdrive?
- 4. Monodroid Signature Capture
- 5. GnuPGME:GPG Signature C++
- 6. Win32_DiskDrive上無效的WQL查詢
- 7. 錯誤? in codesign --remove-signature feature
- 8. Outlook Signature刪除圖像
- 9. 驗證Mandrill的X-Mandrill-Signature
- 10. Invalid Signature - XCode 4.4,Mac App Store
- 11. 如何識別使用Win32_DiskDrive的系統硬盤
- 12. 屬性屬性
- 13. 使用AWS Key和Signature屬性在Amazon S3的瀏覽器中打開.pdf文件?
- 14. 屬性或屬性
- 15. 類:屬性屬性
- 16. Java Signature無法跨平臺驗證
- 17. Signature Invalid/Configured Certificate Mismatch for SSO with SFDC
- 18. Angular 2:Signature Pad需要單獨實例
- 19. Exchange Online Signature for new and replay message
- 20. AngularJS Simple Signature Pad指令(不含jQuery)
- 21. 運行「mvn deploy」時出現「Missing Signature」
- 22. Paypal API USER,PWD,SIGNATURE字段長度
- 23. SAML:爲什麼Signature中的證書?
- 24. 屬性值VS屬性值
- 25. Python類屬性/屬性
- 26. jQuery的 - 屬性與屬性
- 27. VB.Net - 屬性在HTML屬性
- 28. .net和屬性屬性
- 29. 覆蓋屬性屬性
- 30. 重寫屬性屬性
如果用戶重新安裝操作系統?操作系統是否生成相同的簽名? – mrtaikandi 2009-08-28 13:41:33
在我的理解中,簽名從未再次被觸及,如果之前生成的話。因爲即使在重新安裝一個Cluser節點的情況下,羣集磁盤也必須在所有訪問同一磁盤的計算機上保持相同的身份。 – Mischa 2009-08-28 15:28:33