目前,我使用GetDetailsOf获取属性列表,如下所示:
using Shell32;//Add reference > .COM > Type Libraries > Microsoft Shell Controls and Automation
//....
var shell = new Shell();
var objFolder = shell.NameSpace(SS.ExeFolder);//SS.ExeFolder = this exe folder path
var arrExistCols = new List<string>();
var existCol = string.Empty;
for (var i = 0; i < short.MaxValue; ++i)
{
existCol = objFolder.GetDetailsOf(null, i);
if (string.IsNullOrEmpty(existCol))
break;
arrExistCols.Add(existCol.ToUpper());
}
但在这种情况下:163 处的索引是空的,因此我上面的代码将从 163 开始丢失。
C:\Users\lesha\Desktop\TestFolder\sample.wmv
0 Name: sample.wmv
1 Size: 541 KB
2 Item type: Windows Media Audio/Video file
3 Date modified: 24/11/2016 16:57
4 Date created: 24/11/2016 16:57
5 Date accessed: 24/11/2016 16:57
6 Attributes: A
7 Offline status:
8 Availability: Available offline
9 Perceived type: Video
10 Owner: DESKTOP-IVUPCRI\lesha
11 Kind: Video
12 Date taken:
13 Contributing artists:
14 Album:
15 Year:
16 Genre:
17 Conductors:
18 Tags:
19 Rating: Unrated
20 Authors:
21 Title:
22 Subject:
23 Categories:
24 Comments:
25 Copyright:
26 #:
27 Length: 00:00:05
28 Bit rate: ?224kbps
29 Protected: No
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 Organiser address:
43 Organiser name:
44 Reminder time:
45 Required attendee addresses:
46 Required attendees:
47 Resources:
48 Meeting status:
49 Free/busy status:
50 Total size: 237 GB
51 Account name:
52 :
53 Task status:
54 Computer: DESKTOP-IVUPCRI (this PC)
55 Anniversary:
56 Assistant's name:
57 Assistant's phone:
58 Birthday:
59 Business address:
60 Business city:
61 Business country/region:
62 Business P.O. box:
63 Business postcode:
64 Business county/region:
65 Business street:
66 Business fax:
67 Business home page:
68 Business phone:
69 Call-back number:
70 Car phone:
71 Children:
72 Company main phone:
73 Department:
74 Email address:
75 Email2:
76 Email3:
77 Email list:
78 Email display name:
79 File as:
80 First name:
81 Full name:
82 Gender:
83 Given name:
84 Hobbies:
85 Home address:
86 Home city:
87 Home country/region:
88 Home P.O. box:
89 Home postcode:
90 Home county/region:
91 Home street:
92 Home fax:
93 Home phone:
94 IM addresses:
95 Initials:
96 Job title:
97 Label:
98 Surname:
99 Postal address:
100 Middle name:
101 Mobile phone:
102 Nickname:
103 Office location:
104 Other address:
105 Other city:
106 Other country/region:
107 Other P.O. box:
108 Other postcode:
109 Other county/region:
110 Other street:
111 Pager:
112 Personal title:
113 City:
114 Country/region:
115 P.O. box:
116 Postcode:
117 County/Region:
118 Street:
119 Primary email:
120 Primary phone:
121 Profession:
122 Spouse/Partner:
123 Suffix:
124 TTY/TTD phone:
125 Telex:
126 Web page:
127 Content status:
128 Content type:
129 Date acquired:
130 Date archived:
131 Date completed:
132 Device category:
133 Connected:
134 Discovery method:
135 Friendly name:
136 Local computer:
137 Manufacturer:
138 Model:
139 Paired:
140 Classification:
141 Status:
142 Status:
143 Client ID:
144 Contributors:
145 Content created:
146 Last printed:
147 Date last saved:
148 Division:
149 Document ID:
150 Pages:
151 Slides:
152 Total editing time:
153 Word count:
154 Due date:
155 End date:
156 File count:
157 File extension: .wmv
158 Filename: sample.wmv
159 File version:
160 Flag colour:
161 Flag status:
162 Space free: 192 GB
163 :
164 :
165 Group:
166 Sharing type:
167 Bit depth:
168 Horizontal resolution:
169 Width:
170 Vertical resolution:
171 Height:
172 Importance:
173 Is attachment:
174 Is deleted:
175 Encryption status:
176 Has flag:
177 Is completed:
178 Incomplete:
179 Read status:
180 Shared: No
181 Creators:
182 Date:
183 Folder name: TestFolder
184 Folder path: C:\Users\lesha\Desktop\TestFolder
185 Folder: TestFolder (C:\Users\lesha\Desktop)
186 Participants:
187 Path: C:\Users\lesha\Desktop\TestFolder\sample.wmv
188 By location:
189 Type: Windows Media Audio/Video file
190 Contact names:
191 Entry type:
192 Language:
193 Date visited:
194 Description:
195 Link status: Unresolved
196 Link target:
197 URL:
198 :
199 :
200 :
201 Media created:
202 Date released:
203 Encoded by:
204 Episode number:
205 Producers:
206 Publisher:
207 Season number:
208 Subtitle:
209 User web URL:
210 Writers:
211 :
212 Attachments:
213 Bcc addresses:
214 Bcc:
215 Cc addresses:
216 Cc:
217 Conversation ID:
218 Date received:
219 Date sent:
220 From addresses:
221 From:
222 Has attachments:
223 Sender address:
224 Sender name:
225 Store:
226 To addresses:
227 To do title:
228 To:
229 Mileage:
230 Album artist:
231 Sort album artist:
232 Album ID:
233 Sort album:
234 Sort contributing artists:
235 Beats-per-minute:
236 Composers:
237 Sort composer:
238 Disc:
239 Initial key:
240 Part of a compilation:
241 Mood:
242 Part of set:
243 Full s244 Colour:
245 Parental rating:
246 Parental rating reason:
247 Space used: ?19%
248 EXIF version:
249 Event:
250 Exposure bias:
251 Exposure program:
252 Exposure time:
253 F-s254 Flash mode:
255 Focal length:
256 35mm focal length:
257 ISO speed:
258 Lens maker:
259 Lens model:
260 Light source:
261 Max aperture:
262 Metering mode:
263 Orientation:
264 People:
265 Program mode:
266 Saturation:
267 Subject distance:
268 White balance:
269 Priority:
270 Project:
271 Channel number:
272 Episode name:
273 Closed captioning:
274 Rerun:
275 SAP:
276 Broadcast date:
277 Program description:
278 Recording time:
279 Station call sign:
280 Station name:
281 Summary:
282 Snippets:
283 Auto summary:
284 Relevance:
285 File ownership:
286 Sensitivity:
287 Shared with:
288 Sharing status: Private
289 : Available
290 Product name:
291 Product version:
292 Support link:
293 Source:
294 Start date:
295 Sharing:
296 Sync status:
297 Billing information:
298 Complete:
299 Task owner:
300 Sort title:
301 Total file size:
302 Legal trademarks:
303 Video compression: {32564D57-0000-0010-8000-00AA00389B71}
304 Directors:
305 Data rate: ?779kbps
306 Frame height: 240
307 Frame rate: ?30 frames/second
308 Frame width: 320
309 Video orientation: 0
310 Total bitrate: ?1003kbps
所以也许我会使用幻数 310 作为最大索引,但这并不可靠,如果在其他计算机中,最大索引是 320 怎么办?那么有什么方法可以获得 GetDetailsOf 的最大索引吗?