Spezielle Dateiinformationen

  • VB.NET

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von Arby.

    Spezielle Dateiinformationen

    Hallo, das hat leider in kein Sub-Forum gepasst, also hier.
    Ich suche eine Möglichkeit, wie man detaillierte Dateiinformationen auslesen kann. Es geht mir dabei nicht um beispeilsweise die Länge, sondern um Informationen zu Medien-Dateien wie zum Beispiel "Interpret", "Album", bei Bildern um "Aufnahmedatum".
    Mit

    VB.NET-Quellcode

    1. System.IO.FileInfo(path)


    beziehungsweise

    VB.NET-Quellcode

    1. My.Computer.FileSystem.GetFileInfo(path)


    komme ich nicht weit genug. Ich finde im ObjectBrowser auch keine Klasse, die das bietet, was mich verwundert, da die Größe z.B. auch abfragbar ist.

    Hat jemand eine Idee, wie man das anders lösen kann?

    Lg.
    Das wirst du so nicht herausfinden, da dies der komplett falsche Ansatz ist. Album, Interpret usw. ist in Formatspezifischen Tags encodiert welche du nicht so ohne weiteres auslesen kannst.
    Das Problem ist vor allem, dass es recht viele verschiedene Tags gibt und alle recht kompliziert sind. Das wahrscheinlich bekannteste Tag-Format ist ID3. Eine Beispielimplementation findest du hier: cscore.codeplex.com/SourceControl/latest#CSCore/Tags/ID3/
    Ich würde dir aber die Verwendung einer Bibliothek welche möglichst viele verschiedene Tags unterstützt nahelegen.

    Und nö @iEi, das Teil kann nicht zwingend alles was er braucht. Wie bereits gesagt: Die Lib sollte möglichst viele Tags unterstützen. Das Teil unterstützt "nur" ID3.


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.
    Hm... ich bin mir fast sicher, dass man sowas auch ohne Lib herausbekommen kann, zumindest auf Betriebssystemen, die diese Informationen ohne weitere Installation irgendwelcher DLLs oder Anwendungen auch im Explorer anzeigen können. Mit .NET-Mitteln allein allerdings natürlich nicht, aber ich kann mir gut vorstellen, dass man mit Kenntnis der richtigen Win32- oder mit Hilfe von MMC-Befehlen und dem Stichwort "Shell Extensions" auf dem richtigen Weg ist. Ist allerdings wirklich nur für Fortgeschrittene, ansonsten ist die Verwendung einer Library zu diesem Zweck sicher ratsamer... ;)
    Weltherrschaft erlangen: 1%
    Ist dein Problem erledigt? -> Dann markiere das Thema bitte entsprechend.
    Waren Beiträge dieser Diskussion dabei hilfreich? -> Dann klick dort jeweils auf den Hilfreich-Button.
    Danke.
    Danke für die Antworten.

    @thefiloe
    Spoiler anzeigen
    darin hatte ich bisher noch keinerlei erfahrung, ich dachte nur es geht auf diesem weg (als eine Art Attribut oder Eigenschaft in Textform, ganz gleich welche Media-Datei) oder ich bin einfach zu faul/unfähig danach zu suchen. morgen wird deine audio-lib ausgecheckt.

    @Arby
    Spoiler anzeigen
    guter rat, aber wieso sollte ich was erfinden, was es schon gibt ;)

    iCanNonIc schrieb:

    wieso sollte ich was erfinden, was es schon gibt ;)

    Das ist doch nach wie vor deine Entscheidung ;)
    Die einen machen sich die Arbeit so einfach wie möglich, indem sie ihre Anwendungen mit Bibliotheken bzw. DLLs vollstopfen, die nicht auf eigenem Mist gewachsen sind, andere hingegen versuchen nach Möglichkeit, so viele Fremd-DLLs von Dritten zu vermeiden wie möglich. Aus deinen bisherigen Beiträgen war nicht ersichtlich zu welchem Typ du wohl gehörst, darum wollte ich dir nur zeigen, dass es evtl. für dein Vorhaben auch eine Lösung gibt, die ohne Fremd-DLLs auskommen kann. 8-)
    Weltherrschaft erlangen: 1%
    Ist dein Problem erledigt? -> Dann markiere das Thema bitte entsprechend.
    Waren Beiträge dieser Diskussion dabei hilfreich? -> Dann klick dort jeweils auf den Hilfreich-Button.
    Danke.
    @Arby Du hast natürlich recht, das hat schon etwas mit Stil/Charakter zu tun finde ich, wie viel tatsächlich von einem selbst kommt. Aber dann hätte ich mich hier nicht registriert, denn es ist glaube ich ja gerade Sinn des Forums, sich gegenseitig zu helfen und als eine Art Schwarmintelligenz zu denken/programmieren. Da kann ich mal über einen kleinen Gesichtsverlust hinwegsehen ;)
    Und welchen Grund sollte das Vermeiden von Bibliotheken haben? Festplatte um nen paar kb erleichtern? In Zeiten wo nen TB fast nix mehr Wert ist, wohl kaum. Außerdem wirst du mit deiner Methode recht wenig Erfolg haben. a) Unterstützt windows nicht alle Tags b) ist das wieder Betriebssystem abhängig woher du das irgendwie über hundert Ecken bekommst und dann ist noch nicht gesagt, dass es überhaupt funktioniert. So mache ich meine NuGet-Konsole auf, hole mir nen Tags-Paket, verwende es und fertig. Wie viele Libs man verwendet ist bei einer Anwendung komplett wurscht.
    Habe grad nen Projekt mit über 60 Bibliotheken bei mir in VS offen, sehe jedoch keinen Grund das zu ändern. Jede hat seine Berechtigung und wäre ne riesen Arbeit die neu zu schreiben. Und das trifft bei einer Tags-Bibliothek gleich doppelt zu :P.


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.
    Jeder halt so wie er mag, warum muss das gleich in eine Grundsatzdiskussion ausarten? Ich geh da auch nicht weiter drauf ein, denn ich hab meiner Meinung nach alles Nötige zu dem Thema gesagt...
    Weltherrschaft erlangen: 1%
    Ist dein Problem erledigt? -> Dann markiere das Thema bitte entsprechend.
    Waren Beiträge dieser Diskussion dabei hilfreich? -> Dann klick dort jeweils auf den Hilfreich-Button.
    Danke.