我目前正在寫在C#.NET 4.5的軟件解決方案。該軟件使用基於硬件ID的許可系統(例如MAC地址或CPU ID)。 一個用戶現在報告說,他使用微軟的App-V軟件時有問題,發牌。他提到,每當新用戶想要使用該軟件時,應用程序就會抱怨許可證無效(由於硬件發生變化)。 如果以前註冊的用戶在其他客戶端上使用本軟件,也會發生這種情況。 我現在的問題是,通過App-V的運行應用程序時,有哪些呢下面剪斷的代碼返回時,客戶端或者應用程序實際運行的服務器的MAC地址。如果第一個是真的,是否有辦法從服務器獲取相同的信息,在.NET中使用某些功能?微軟的App-V和硬件ID
private static string getMAC() {
ManagementClass oMClass = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection MOCol = oMClass.GetInstances();
string mac = "";
foreach (ManagementObject MO in MOCol) {
if (MO != null) {
if (MO["MacAddress"] != null) {
mac = MO["MacAddress"].ToString().Replace(":", "");
if (mac != string.Empty) {
break;
}
}
}
return mac;
}
我意識到這是一個老問題,但我只是想澄清一些有關App-V的工作原理是:應用程序只有一個「服務器」,在爲App-V準備的第一階段,稱爲測序上運行。這是IT管理員如何生成客戶端可以使用App-V運行的軟件包。但是,從應用程序部署到客戶機的那一刻起,所有代碼都會在該機器上本地執行。 – peter 2015-04-30 23:11:44