簡體   English   中英

GetFileTitle的本地化版本?

[英]localized version of GetFileTitle?

我拼命地嘗試猜測在給定文件路徑的情況下如何檢索照片的本地化文件名。 例如,給定路徑

c:\\ images \\ jellyfish.png-Win 7資源管理器和內置的圖像查看器程序都顯示“Méduses”一詞,表示法文Win7。這對於其他版本的Windows是否成立?

GetFileTitle僅刪除擴展名和文件夾路徑,給了我“水母”,這不是我想要的,並且在閱讀了MSDN和google之后,似乎Windows Media Format的http://msdn.microsoft.com/zh-cn/ library / dd798508(v = VS.85).aspx接口在這里無濟於事。 我丟失了谷歌搜索技能,或者記錄得很差。 請幫助 ?

謝謝

我不確定這種情況(我從未遇到過這種形式的本地化文件名),但是我知道獲取系統目錄和標准Windows applet等的本地化文件名的唯一官方支持的方法是使用的IShellFolder :: GetDisplayNameOf。

簡而言之,您需要獲取文件(SHParseDisplayName)的PIDL,綁定到其父文件夾(SHBindToParent),然后使用SHGDN_INFOLDER標志查詢顯示名稱。

附錄:一種更簡單的方法(我完全忘記了)是使用SHGetFileInfo來獲取帶有SHGFI_DISPLAYNAME標志的顯示名稱。 這意味着您不需要混搭PIDL。 SHGetFileInfo本質上是包裝各種外殼COM類(如IShellFolder)的包裝-兩種方式的關鍵都是使用外殼獲取顯示名稱,而不是基礎API函數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM