如何检索 IShellItem 的文件大小?
给定一个 IShellItem*
,我如何找出它的大小?
环顾四周时,我发现解决方案可以是:
- 将
IShellItem2
绑定到给定的IShellItem
- 检索
IShellItem
属性存储 - 使用 < a href="https://learn.microsoft.com/en-us/windows/win32/api/propvarutil/nf-propvarutil-propvarianttouint64" rel="nofollow noreferrer">这个函数(如页面中的示例所示),找到文件的大小
我不完全理解Win32 API,所以也许我把这一切都错了,但如果我是对的,我只是发现很难得到过了第一步 - 我怎样才能绑定这两个?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您无需使用如果您有参考,您可以直接使用。这是一些示例代码:
如果您已经有一个
ishellitem
参考(通常,您想直接获得ishellitem2
),并且需要ishellitem2
,您可以做到这一点:另一种方法,使用
ishellitem2
,是:You don't need to use IPropertyStore if you have an IShellItem2 reference, you can directly use IShellItem2::GetUInt64 . Here is some sample code:
If you already have an
IShellItem
reference (in general you want to get anIShellItem2
directly) and want aIShellItem2
, you can do this:Another way of doing it, w/o using
IShellItem2
, is this: