2012-04-21 79 views
0

可能重複:
What’s a good way to uniquely identify a computer?如何生成像TeamViewer C#這樣的唯一ID?

如上標題,有人知道如何產生類似的TeamViewer一個唯一的ID在C#中牌的目的。

我想調用一個函數,每次像TeamViewer那樣應該爲PC返回一個唯一ID。我想使用這個硬件ID來進行許可證管理。

+0

你在說UUID/GUID嗎?給我們一個你指的是什麼的例子。 – 2012-04-21 15:48:34

+1

你在找[Guid.NewGuid](http://msdn.microsoft.com/en-us/library/system.guid.newguid.aspx)嗎? – Filburt 2012-04-21 15:54:51

+0

我覺得GUID不是。我希望每次都能在TeamViewer等PC上返回1個唯一ID的呼叫功能。我想使用這個硬件ID來進行許可證管理。 – Shinichi 2012-04-21 23:53:54

回答

3

您可以使用Guid.NewGuid方法

public static Guid NewGuid(); 

每次調用此方法生成新的Guid

編輯:根據您的意見

Windows Management Instrumentation (WMI)是可以使用的東西。例如,您可以使用以下代碼來獲取系統的BIOS ID。

ManagementObjectSearcher searcher = new 
    ManagementObjectSearcher("root\\CIMV2", "SELECT * FROM 
    Win32_BIOS"); 

foreach (ManagementObject wmi in searcher.Get()) 
{ 
    Console.WriteLine("BIOS Serial Number: " + 
     wmi.GetPropertyValue("SerialNumber").ToString()); 
} 

同樣,您可以獲取其他系統信息並使用它來生成系統的唯一標識。 Here is a good article on CodeProject從哪裏可以得到幫助。請看一看。

+0

我覺得GUID不是。我希望每次都能在TeamViewer等PC上返回1個唯一ID的呼叫功能。我想使用這個硬件ID來進行許可證管理。 – Shinichi 2012-04-21 23:53:45

+0

@Shinichi剛剛更新了我的答案,請看看。 – ABH 2012-04-22 19:22:57