这就是我想要得到的:
我知道这是可能的,因为 Total Commander 显示完全相同的信息,尽管在不同样式的窗口中。这让我认为必须有一种方法可以查询任何给定文件的文本。
这就是我想要得到的:
我知道这是可能的,因为 Total Commander 显示完全相同的信息,尽管在不同样式的窗口中。这让我认为必须有一种方法可以查询任何给定文件的文本。
IQueryInfo
界面就是你想要的。简要(仅限伪代码,抱歉):
PCUITEMID_CHILD pidl = <PIDL of item in question>
IShellFolder* psf = <IShellFolder parent folder of item in question>
IQueryInfo* pqi;
if (SUCCEEDED(psf->GetUIObjectOf(hWnd, 1, &pidl, 0, &pqi)))
{
LPWSTR lpszTip;
if (SUCCEEDED(pqi->GetInfoTip(0, &lpszTip)) && lpszTip)
{
// do something with the tip, and then free it
CoTaskMemFree(lpszTip);
}
}
一旦你有了文本,你当然可以以任何你喜欢的方式显示它。