0

連接網絡驅動器後,當我們打開Windows資源管理器或文件對話框, 時,進程在註冊表中找到該密鑰以顯示其卷名。這是什麼GUID?

HKCU \軟件\微軟\的Windows \ CurrentVersion \ Explorer中\ MountPoints2 \ {A45BA3B2-F3 96-4F67-8375-ECC2CA1EBBFC} \ _ LabelFromReg

我不知道是什麼GUID是。

  • 這是什麼?
  • 誰(何時)確實創建密鑰?
  • 應用程序(在這種情況下,Windows資源管理器)如何知道密鑰?

我正在開發像SMB這樣的網絡重定向器。
我應該爲密鑰寫一個卷名。
一旦我的網絡卷連接,註冊表項也創建。 (GUID與中小企業不一樣,它甚至會在每個連接創建和刪除時發生變化)
但是我不知道如何獲得我的卷的(?)GUID(即使是誰創建密鑰)

我試圖在ReactOS源代碼中找到DefineDosDeviceW(懷疑)。但它尚未實施。 T.T

- 當然,我也寫了卷名\ MountPoints2 \ ## UNCNAME \ _LabelFromReg
但它並不在64位Windows WOW64應用程序。

回答

2

這不是一個特定的GUID;這是一個卷標識符。 Windows資源管理器在裝入卷時創建這些密鑰。您可以通過運行不帶參數的mountvol來查看當前安裝的卷ID的列表。以編程方式(在Win32級別),您可以通過FindFirstVolume和朋友獲得它。我對網絡重定向器一無所知;但是,手動在資源管理器註冊表項中進行篡改似乎並不正確。這是探險家的私人領地。你想達到什麼目的?也許有一個記錄的API。

+0

我必須寫入密鑰才能在Apps中表示我的卷名。在只有Wow64應用程序的對話框中,我們的卷名沒有很好地顯示。謝謝,我會嘗試FindFirstVolume和他的朋友:) – Benjamin 2010-12-14 08:21:42

+0

我試過,但事實並非如此。它與卷標識符不同。 – Benjamin 2010-12-14 08:43:27

+0

@Benjamin - win64可能不同嗎?因爲對我來說鍵名確實匹配卷ID ......不幸的是,我沒有win64方便檢查。 – atzz 2010-12-14 09:19:52