2012-10-23 82 views
1

我試圖將信息存儲在中央數據庫中,以跟蹤具有各種版本應用程序的客戶端數量。我無法在WinRT中找到標識應用程序實例的唯一標識。有誰知道我可以如何跟蹤這個?識別應用程序實例Windows 8

+0

您的意思是WinRT應用程序的應用程序ID?在這種情況下,您可以閱讀CoreApplication.Id屬性,http://msdn.microsoft.com/en-us/library/windows/apps/windows.applicationmodel.core.coreapplication.id.aspx。 –

回答

1

如果我明白你的要求,你可以使用的是Application Specific Hardware ID (ASHWID)。例如:

 Windows.System.Profile.HardwareToken hid = Windows.System.Profile.HardwareIdentification.GetPackageSpecificToken(null); 

     var version = Package.Current.Id.Version; 
     Debug.WriteLine(hid.Id + " - " + version.ToString()); 

從文檔:

獲取的硬件標識符(ASHWID)表示當前 硬件。返回的ASHWID對於每個應用程序包 將有所不同。換句話說,當由不同軟件包中的兩個應用程序調用該API時,該API將返回不同的標識符 。當由屬於相同 包的兩個應用程序調用時,它將返回 相同的標識符。

+0

請注意,如果硬件配置發生變化,給定設備的[ASHWID可能會更改](http://msdn.microsoft.com/zh-cn/library/windows/apps/jj553431)。它涉及到設備的定義以及硬件更改/修改(更多內存?新磁盤?)後,一臺設備何時成爲另一臺設備。 '好'的消息是你可以做出這個決定,但是有邏輯涉及 - 例如,它可能只是你關心唯一定義設備的ASHWID的CPU部分。 –

相關問題