我正在编写一些代码,以自动选择Window Explorer(explorer.exe)项目.我发现了两种可能有用的方法:
HRESULT SelectItem(
[in] VARIANT *pvfi,
[in] int dwFlags
);
// from http://msdn.microsoft.com/en-us/library/windows/desktop/dd894079(v=vs.85).aspx
HRESULT SelectItemRelative(
[in] int iRelative
);
// from http://msdn.microsoft.com/en-us/library/windows/desktop/bb774966(v=vs.85).aspx
我已经尝试过SelectItemRelative,并且效果很好;当我传递1作为参数时,将选择资源管理器中的下一个项目.该方法是不言自明的
现在,我不太了解SelectItem,它需要一个VARIANT和一个int.根据MSDN,int标志告诉该方法进行哪种选择,仅此而已,没有任何关于VARIANT的解释.
我应该为VARIANT * pvfi通过什么?
解决方法:
对于VARIANT,您可以传递该项目的LPCITEMIDLIST.