Video DirectX Problem

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von jvbsl.

    Video DirectX Problem

    Moin,

    ich wollte mich mal mit Direct X Video beschäftigen, nun habe ich mir dieses Tutorial angesehen [VB 2008] Audio/Video mit DirectX! leider geht der Download bei mir nicht, also habe ich bischel gegooglet und mit das DXSDK_Aug09.exe geladen. Es wird auch unter Verweise angezeigt, eingebunden habe ich als Verweise und Imports Microsoft.DirectX und Microsoft.DirectX.AudioVideoPlayback.

    Nun lade ich ein Video und bei der Zuweisung kommt folgender fehler

    Die DLL "C:\WINDOWS\assembly\GAC\Microsoft.DirectX\1.0.2902.0__31bf3856ad364e35\Microsoft.DirectX.dll" unternimmt einen Versuch, innerhalb der Sperre für den OS-Loader eine verwaltete Ausführung durchzuführen. Versuchen Sie nicht, verwalteten Code innerhalb einer DllMain- oder Bildinitialisierungsfunktion auszuführen, da dies ein Hängen der Anwendung zur Folge haben kann.


    Leider sacht mir das überhaupt nichts.

    Habe ich evtl. das falsche SDK geladen?
    Hi,

    ja, das Verhalten kenne ich, nennt sich LoaderLock...
    Woran genau es liegt, kann ich dir leider auch nicht sagen (vielleicht einer der vielen Bugs von MDX?).
    Lösen kannst du das Problem (zumindest in der Express Version, wie das in den "großen" Versionen ist, kann ich dir nicht sagen), indem du im Menü "Debuggen" auf"Ausnahmen" gehst und dort unter "Managed Debugging Assistants" beide Häckchen beim Listenpunkt "LoaderLock" wegnimmst. Ob das sauber ist, weiß ich allerdings nicht...

    MfG
    man könnte auch bei jedem mal wenn der Fehler kommt nochmal F5 drücken...

    soweit ich weiß sind diese beiden Möglichkeiten die einzigen...

    sauber sind die meines Wissens somit auch...xD

    und soweit ich das verstanden habe liegt das daran, dass MDX die normalen C++ Dlls aufruft und diese im geschützten Bereich lesen(keine gewähr...xD)
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---
    Okay mit dme Häkchen weg funzt.

    Nun noch ein anderes Problem, es wird ein Logo angezeigt oben rechts O.o ist das normal beim DirectX?
    Weil irgendwie fände ich das blöde. Ich möchte für mein Media Center ein Videoplayer machen, mit VLC funzt es nicht so wie ichs mir vorstelle, deswegen dachte ich nun DirectX probieren.
    Na genauso wie im Tutorial

    VB.NET-Quellcode

    1. Imports Microsoft.DirectX
    2. Imports Microsoft.DirectX.AudioVideoPlayback
    3. Public Class Form1
    4. Private WithEvents VideoDatei As Video
    5. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    6. Try
    7. VideoDatei = New Video("M:\Movie\Alien 1\Alien 1_Part1.avi")
    8. Catch ex As Exception
    9. End Try
    10. VideoDatei.Owner = Panel1
    11. End Sub
    12. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    13. VideoDatei.Play()
    14. End Sub
    15. End Class