我正在寫一個PS腳本,需要將給定路徑(如%UserProfile%\ Pictures)「轉換」爲其完整路徑並返回可能存在的任何特殊文件夾值,將真實路徑轉換爲GUID和特殊文件夾名稱。在PowerShell中使用IKnownFolderManager接口
從KNOWNFOLDERID的MSDN殼引用(不能發佈超過2個鏈接ATM。哎呀),我假設每一個「特殊文件夾」具有多種特性,如GUID,顯示名稱,默認路徑等
我在MSDN上遇到過IKnownFolderManager接口及其方法;看起來像我以後的事情。麻煩的是,我找不到任何PowerShell例子來說明如何使用這個「shell接口」,並想知道是否有人願意提供一個例子。
道歉沒有分享我到目前爲止所嘗試過的,但它不超過this "Hey, Scripting Guy" post,就我所知。
編輯:
我最的方式,通過一個腳本來創建基於XML的文件,Windows庫的背後,讓我將它設置我想要的方式,消除許多GUI的基於MS的強制性限制。 XML文件將由「登錄」PowerShell腳本創建,該腳本從HKCU密鑰中讀取某些變量。註冊表值本身是由GPP註冊表設置創建的。我希望管理員能夠通過GPP設置註冊表屬性及其變量來說「圖片」%UserProfile%/Pictures
。爲使XML文件使用此路徑,PS腳本必須展開%UserProfile%
。那裏沒問題。此外,該XML文件「理解」特殊文件夾,但它使用特殊文件夾的GUID。
有一個reg密鑰(HKLM:\Software\Microsoft\Windows\CurrentVersion\Explorer\FolderDescriptions
),其中包含我可以用來將文件夾名稱轉換爲GUID的文件夾名稱和GUID,但問題是此註冊表項使用「傳統顯示名稱」(My Pictures)而不是真正的道路(圖片),根據KNOWNFOLDERID。我真正要問的是,如果有一種「枚舉」顯示KNOWNFOLDERID頁面的常量的方法。我知道這些只是常數,但是可以以某種方式將相同的「表格」從系統中取出。然後,我可以找出一種方法來實現腳本所需的「查找」/「轉換」。
有很高的聲譽障礙,創造,因爲新用戶的標籤有一個不好的習慣,使得[meta tags](http://meta.stackoverflow.com/tags/meta-tags/info)對提問者看起來很有幫助,但是對於該網站來說是絕對不好的,並且通常不會有標籤「專家「就像[tag:powershell]這樣的標籤。例如,「Hello World」問題可以用「help」,「hello」,「world」,「!」,「coding」或其他非描述標籤來標記。 –
我不清楚你想達到什麼目的。如果你想擴展像'%USERPROFILE%'這樣的環境變量,你可以簡單地執行'$ fullPath =&cmd/c echo「$ pathWithVariables」',但我沒有看到GUID或「特殊文件夾值」是如何進入的。請提供一些輸入和期望輸出的例子。 –
很抱歉重複,但它只會讓我添加一組有限的字符或應用答案。 StackOverFlow設計當然是獨一無二的! – woter324