標籤:發送 讀取 registry war gis mic 連結 技術 empty
這篇文章本無技術含量,也不高大上,不過想想,還是寫下來吧,肯定有人會用得到的。
常玩系統的朋友,應該知道 Shell 指令,這是一個很好玩很神奇的指令。利用它,可以用簡短的單詞,輕易地開啟系統中的一些特殊目錄。
比如,你在“運行”視窗或“檔案管理工具”的地址欄中輸入:
shell:SendTo
斷行符號後,你就會看到“發送到”目錄被開啟。
再比如,你輸入:
shell:System
斷行符號後,就會開啟 System32 目錄。
注意,shell 後面是有個冒號(英文冒號)的,然後是特殊目錄的簡稱,不區分大小寫。
為了讓大家能夠更直觀地看到 Windows 10 支援哪些 shell 指令,老周直接上了一段代碼,它會讀取系統中的特殊目錄的名稱列表。
請看代碼。
// 從註冊表中把這些好玩的目錄 read 出來 RegistryKey fsdescs = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions"); // 獲得子鍵列表 string[] subkeys = fsdescs.GetSubKeyNames(); // 逐個讀出“Name”的值 foreach (string s in subkeys) { try { // 開啟以 guid 標識的子鍵 RegistryKey guidKey = fsdescs.OpenSubKey(s); // 取值 string val = guidKey.GetValue("Name") as string ?? string.Empty; // 添加到集合中 _obsstrCols.Add($"shell:{val}"); guidKey.Dispose(); } catch { continue; } } fsdescs.Dispose();
哦,對了,要在代碼中直接開啟一個目錄,可以用 Process 類的 Start 方法。這個方法很強大,你傳檔案路徑,或URI,或shell指令,或協議路徑,它都能開啟,並不一定要傳.exe 檔路徑。
然後,你自己看吧。
在視窗上直接點連結就能開啟對應的目錄了。
原始碼嘛,猛點這裡下載 ->> 下下下下。
好了,沒技術水平的文章寫完了,不想看的可以不看,但不能噴,噴是一種無家教行為,要罰款250元。
Windows 10 中的 Shell 指令