Tient tient, le premier test est un échec !
L'assembly en mode mixte est créé avec la version 'v1.1.4322' du runtime et ne peut pas être chargé dans le runtime 4.0 sans d'autres informations de configuration.
J'fait rin d'mal !?
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim rt As Integer = Nothing
Dim mAUDIO As New ClassDX(MusicPath & "a.mp3", False)
End Sub
Imports Microsoft.DirectX
Imports Microsoft.DirectX.AudioVideoPlayback
Public Class ClassDX
Private mAudio As Audio = Nothing
Private mPlay As Boolean = False
Private _filename As String
Private _Loop As Boolean
Sub New(ByVal filename As String, ByVal bLoop As Boolean)
_filename = filename
_Loop = bLoop
End Sub
Private Property CurrentPosition As Integer
Public Sub Play()
audMsg("New Audio")
mAudio = New Audio(_filename, True)
If mAudio.State = AudioVideoPlayback.StateFlags.Running Then
mPlay = True
AddHandler mAudio.Starting, AddressOf MusicPlays
AddHandler mAudio.Stopping, AddressOf MusicStops
If _Loop = True Then
AddHandler mAudio.Ending, AddressOf MusicLoop
End If
Else
mPlay = False
Exit Sub
End If
End Sub
Private Sub MusicStops(ByVal sender As Object, ByVal e As System.EventArgs)
audMsg("MusicStops." & sender.ToString & "." & e.ToString)
If _Loop = True Then RemoveHandler mAudio.Ending, AddressOf MusicLoop
End Sub
Private Sub MusicPlays(ByVal sender As Object, ByVal e As System.EventArgs)
audMsg("MusicPlays." & sender.ToString & "." & e.ToString)
End Sub
Private Sub MusicLoop(ByVal sender As Object, ByVal e As System.EventArgs)
audMsg("MusicLoop." & sender.ToString & "." & e.ToString)
mAudio.CurrentPosition = 0
End Sub
Private Sub audMsg(ByVal msg As String)
Dim st As String
If mAudio Is Nothing Then
st = "Audio Off"
Else
st = mAudio.State.ToString
End If
MainForm.TextBox1.Text &= msg & ": " & st
End Sub
Private Function State() As StateFlags
Throw New NotImplementedException
End Function
End Class