What options are available for Shell32.Folder.GetDetailsOf(..,..)?(Shell32.Folder.GetDetailsOf(..,..) 有哪些可用选项?)
问题描述
我已经看到使用 GetDetailsOf() 来获取有关外壳项目的详细信息的答案,但数字始终是幻数.
I've seen answers using GetDetailsOf() to get details about shell items, but the numbers are always magic numbers.
我查看了 FolderItem 和 GetDetailsOf 但什么也没找到.(后者中的列表并不包含所有内容.它们不包括描述"、作者",也不包括回收站删除日期......)
I've looked at the docs for both FolderItem and GetDetailsOf but found nothing. (The list in the latter is not for everything. They don't cover "Description", "Authors", nor the recycle bin delete date...)
是否有一些方法可以返回项目的可能选项?它在某处列出吗?
Is there some method that will return the possible options for an item? Is it listed somewhere?
推荐答案
我偶然发现了这个.如果您将 null 传递给 GetDetailsOf,那么它会以列名进行响应.例如,使用 cscript 执行以下 JScript:
I figured this out by accident. If you pass null into GetDetailsOf then it responds with the column names. For example, execute the following JScript with cscript:
var shellapp = WScript.CreateObject("Shell.Application");
var folder = shellapp.NameSpace("D:\");
for (var j = 0; j < 0xFFFF; j++) {
detail = folder.GetDetailsOf(null, j);
if (!detail) {
break;
}
WScript.Echo("[" + j + "] = " + detail);
}
在我的 Windows 10 系统上输出:
On my Windows 10 system this outputs:
[0] = Name
[1] = Size
[2] = Item type
[3] = Date modified
[4] = Date created
[5] = Date accessed
[6] = Attributes
[7] = Offline status
[8] = Availability
[9] = Perceived type
[10] = Owner
[11] = Kind
[12] = Date taken
[13] = Contributing artists
[14] = Album
[15] = Year
[16] = Genre
[17] = Conductors
[18] = Tags
[19] = Rating
[20] = Authors
[21] = Title
[22] = Subject
[23] = Categories
[24] = Comments
[25] = Copyright
[26] = #
[27] = Length
[28] = Bit rate
[29] = Protected
[30] = Camera model
[31] = Dimensions
[32] = Camera maker
[33] = Company
[34] = File description
[35] = Program name
[36] = Duration
[37] = Is online
[38] = Is recurring
[39] = Location
[40] = Optional attendee addresses
[41] = Optional attendees
[42] = Organizer address
[43] = Organizer name
[44] = Reminder time
[45] = Required attendee addresses
[46] = Required attendees
[47] = Resources
[48] = Meeting status
[49] = Free/busy status
[50] = Total size
[51] = Account name
这与 Windows 2000 完全不同,详见 检索扩展文件属性.顺便说一句,如果您传入不同的 NameSpace,那么您将获得不同的属性.在我的示例中,我询问驱动器 D: 上的文件可以使用哪些属性,这可能因格式而异.
And this is quite different from Windows 2000 as detailed from Retrieving Extended File Properties. Incidentally if you pass in a different NameSpace then you're going to get different attributes. In my example, I'm asking what attributes are available for files on drive D: which could be different depending on its format.
这篇关于Shell32.Folder.GetDetailsOf(..,..) 有哪些可用选项?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Shell32.Folder.GetDetailsOf(..,..) 有哪些可用选项?
基础教程推荐
- 重新排序 WPF TabControl 中的选项卡 2022-01-01
- 如果条件可以为空 2022-01-01
- 更新 Visual Studio 中的 DataSet 结构以匹配新的 SQL 数据库结构 2022-01-01
- Mono https webrequest 失败并显示“身份验证或解密失败" 2022-01-01
- SonarQube C# 分析失败“不是指针的有效行偏移" 2022-01-01
- 获取C#保存对话框的文件路径 2022-01-01
- 将数据集转换为列表 2022-01-01
- 从 C# 控制相机设备 2022-01-01
- 在 VB6 或经典 ASP 中使用 .NET 2022-01-01
- C# 9 新特性——record的相关总结 2023-04-03
