Получение свойств или файлов Windows mp3-файлов с помощью Windows API? - PullRequest
0 голосов
/ 08 июля 2019

Я хочу получить список свойств, которые Windows может получить, на вкладке «Сведения» в меню «Файл» -> «Свойства».

Я прочитал несколько старых сообщений об этом, но не знаю, есть ли современный способ сделать это. Есть ли новый способ сделать это? Обратите внимание, что я добавил в свой mp3 пользовательские теги, которые я хочу прочитать, и некоторые библиотеки, такие как TagCSharp, не могут читать, но Windows есть.

Я уже пытался использовать WindowsAPICodePack, но я не знаю, как прочитать все теги, а не только стандартные.

Я тоже читал этот пост Как узнать подробности из свойств файла? Но я не нашел способа реализовать в .net

enter image description here

1 Ответ

1 голос
/ 08 июля 2019

Есть несколько способов.

Проще всего использовать Shell.

Проверка файла mp3 (Windows 10, C #, VS 2015) =>

// Add Reference Shell32.DLL
string sFolder = "e:\\";
string sFile= "01. IMANY - Don't Be so Shy (Filatov & Karas Remix).mp3";
List<string> arrProperties = new List<string>();
Shell objShell = new Shell();
Folder objFolder;
objFolder = objShell.NameSpace(sFolder);
int nMaxProperties = 332;
for (int i = 0; i < nMaxProperties; i++)
{
    string sHeader = objFolder.GetDetailsOf(null, i);
    arrProperties.Add(sHeader);
}
FolderItem objFolderItem = objFolder.ParseName(sFile);
if (objFolderItem != null)
{
    for (int i = 0; i < arrProperties.Count; i++)
    {
        Console.WriteLine((i + ('\t' + (arrProperties[i] + (": " + objFolder.GetDetailsOf(objFolderItem, i))))));
    }
}

Я получаю за первые свойства (французский) =>

0   Nom: 01. IMANY - Don't Be so Shy (Filatov & Karas Remix).mp3
1   Taille: 7,28 Mo
2   Type d’élément: Son au format MP3
3   Modifié le: 04/07/2019 22:47
4   Date de création: 21/04/2017 15:15
5   Date d’accès: 08/07/2019 12:23
6   Attributs: A
7   État hors connexion: 
8   Disponibilité: 
9   Type identifié: Audio
10  Propriétaire: DESKTOP-EOPIFM5\xxx
11  Sorte: Musique
12  Prise de vue: 
13  Interprètes ayant participé: IMANY
14  Album: Virgin Radio Summer Pop 2016
15  Année: 2016
16  Genre: Pop
17  Chefs d’orchestre: 
18  Mots clés: 
19  Notation: 4 étoiles
20  Auteurs: IMANY
21  Titre: Don't Be so Shy (Filatov & Karas Remix)
22  Objet: 
23  Catégories: 
24  Commentaires: 
25  Copyright: 
26  N°: 1
27  Longueur: 00:03:10
28  Vitesse de transmission: ?320 Kbits/s
...