2009-10-23 110 views
2

SD卡上有一個製造商的序列號,網上有很多頁面描述如何在各種移動設備上檢索它(包括this one)。但我需要檢索它在桌面版本的Windows,並且適用於移動版本的Windows的代碼似乎並沒有翻譯。在Windows XP/Vista/7上檢索SD卡序列號?

問題:如何以編程方式從桌面Windows下的SD卡檢索SD卡製造商的序列號?

編輯:從我收集的信息可以使用DeviceIoControlIOCTL_SFFDISK_DEVICE_COMMAND發送SD卡規範中的命令10,但它不可靠 - 它只適用於某些非USB讀卡器,並且僅適用於這些讀者的某些驅動程序。這對我們的目的是無用的。也許別人可以從這些信息中獲得一些用處。

+0

我的問題是你是否知道一個事實,即它*可*可以在完成一種可靠的方式,即你知道任何已經做到這一點的軟件嗎? – 2012-06-01 02:43:23

+0

截至這個問題的時候,我無法找到任何可靠的方法來做到這一點。雖然已經過去了幾年,但從那時起,該技術可能已經成熟。 – 2012-06-01 22:10:43

+0

不,我還沒有發現任何其他可靠的軟件。 – 2012-06-01 22:11:29

回答

0

那麼,你可以使用SetupDiXXX api調用(see this Code Project example)或者如果我沒有錯誤地使用WMI查詢來做到這一點。

我不是很通用的使用WMI查詢,但我確信網上有很多關於它的信息。

使用SetupDiXXX方法,您可以查詢特定類的當前設備(您將不得不查找SD卡的設備類),然後通過計算機中存在的設備來查看製造商序列號。

有關SetupDiXXX功能參考,請參閱以下

+0

謝謝,但它看起來沒有辦法可靠地做到這一點。我在編輯問題以解釋我發現的內容。 – 2009-10-24 23:17:11