Visual Basic (vb.net): получить подробную информацию о видеофайле, например. ширина кадра

Я использую shell32.dll для получения расширенных свойств файла, мое текстовое поле будет отображать каждое свойство файла (iCollumn -1 до 300). но он не будет показывать ширину кадра или высоту кадра (и многие другие свойства). если вы не можете понять, как ее решить, вы можете привести меня к альтернативному методу.

примечания: у меня есть расширения, показанные в проводнике Windows, мой проект ссылается на элементы управления оболочки Microsoft и автоматизации

код:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Dim objShell As Shell32.Shell
    Dim objFolder As Shell32.Folder

    objShell = New Shell32.Shell
    objFolder = objShell.NameSpace("C:\Users\Sam\Videos")

    If (Not objFolder Is Nothing) Then
        Dim objFolderItem As Shell32.FolderItem
        objFolderItem = objFolder.ParseName("Kick_Ass.avi")

        If (Not objFolderItem Is Nothing) Then
            Dim szItem As String
            szItem = objFolder.GetDetailsOf(objFolderItem, 168)
        End If


        For i = -1 To 300
            TextBox1.Text += i & “: ” & objFolder.GetDetailsOf(objFolderItem, i) & vbCrLf
        Next


        objFolderItem = Nothing
    End If

    objFolder = Nothing
    objShell = Nothing
End Sub

вывод (ради пространства я только отображал результаты, которые не отображали "":

-1: Item type: VLC media file (.avi)
Size: 1.36 GB
Length: 01:52:53
Availability: Available offline
0: Kick_Ass.avi
1: 1.36 GB
2: VLC media file (.avi)
3: 10/05/2010 12:49 AM
4: 11/02/2016 1:59 PM
5: 11/02/2016 1:59 PM
6: A

8: Available offline
9: Video
10: Sam-PC\Sam
11: Video

19: Unrated

27: 01:52:53
28: ‎384kbps
29: No

50: 930 GB

54: SAM-PC (this PC)

157: .avi
158: Kick_Ass.avi

162: 813 GB

180: No

183: Videos
184: C:\Users\Sam\Videos
185: Videos (C:\Users\Sam)

187: C:\Users\Sam\Videos\Kick_Ass.avi

189: VLC media file (.avi)

246: ‎12% 

286: Sam-PC\HomeUsers
287: Shared
288: Available

0 ответов

Ширина видеокадра указана в индексе i = 316 (это будет содержать значение, например, 1920).

Высота видеокадра в индексе i = 314 (это будет содержать значение, например, 1080).

Индекс возможного objFolderItem детали, кажется, идут так высоко, как i = 320,

Другие вопросы по тегам