[英]In Windows Node.js fs.readdirSync With Users Folders etc
我一直在開發nw.js項目,並像往常一樣在其中使用node.js文件系統功能。 在我的應用程序中,有一個文件管理器,我根據用戶導航列出文件夾和文件。 例如,在Windows中,如果我掃描驅動器C:我將土耳其語命名文件夾“Kullanıcılar”作為“用戶”。 我知道它在操作系統中的真實名稱是“用戶”,並且根據語言在屏幕上可以看到。 我可以在文件管理器中付款時替換此類文件夾的名稱,但我正在尋找更好的解決方案(如果存在)。 提前致謝。
這里有一個SO答案,它使用SHGetFileInfo
函數讀取C#中文件夾的本地化名稱,這可能會幫助您。
現在,我知道您沒有要求,但是如果您想知道信息的存儲位置,它位於目錄Desktop.ini
文件中。
例如,我的Windows 10安裝中有針對“用戶”的內容:
[.ShellClassInfo]
LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21813
這是我的用戶文件夾中的Images文件夾(調出這一點以向您顯示其他鍵):
[.ShellClassInfo]
LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21779
InfoTip=@%SystemRoot%\system32\shell32.dll,-12688
IconResource=%SystemRoot%\system32\imageres.dll,-113
IconFile=%SystemRoot%\system32\shell32.dll
IconIndex=-236
@%SystemRoot%\\system32\\shell32.dll,-21813
指向必須讀取MUI(多語言用戶界面) 資源 ,給定文件的鍵21813(假定@表示它位於此文件中,而不是此字面值,但不要在那上面引用我)。 %SystemRoot%
是指向Windows目錄的環境變量。
實際的MUI文件及其位置由Windows處理(請參見上面的MSDN鏈接),但我們只是偶然知道,用於shell32.dll的美國英語本地化的MUI文件是system32\\en-US\\shell32.dll.mui
。
使用Resource Hacker打開該文件,我們可以搜索21813
瞧! 我們可以找到包含以下內容的STRINGTABLE資源 #1364:
[...snip...]
21812, "Extras and Upgrades"
21813, "Users"
21814, "Saved Games"
[...snip...]
不幸的是,我沒有可用的tr-TR/shell32.dll.mui
,所以您只需要相信我,您會在Kullanıcılar
找到Kullanıcılar
字符串。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.