Private Function readXmlDvd(ByVal strPath As String) As Hashtable '************************************* 'dvdinfo '************************************* Dim hr As Integer Dim comobj As Object = vbNull Dim status As AMDvdRenderStatus Dim dvdGraph As IDvdGraphBuilder Dim dvdInfo As IDvdInfo2 Dim strDVDInfoUrl As String = "http://movie.metaservices.microsoft.com/pas_movie_B/template/GetMDRDVDByCRC.xml?CRC=" Dim discID As Long = 0 Dim strDiscId As String dvdGraph = New DvdGraphBuilder Try hr = dvdGraph.RenderDvdVideoVolume(vbNull, AMDvdGraphFlags.None, status) DsError.ThrowExceptionForHR(hr) hr = dvdGraph.GetDvdInterface(GetType(IDvdInfo2).GUID, comobj) DsError.ThrowExceptionForHR(hr) dvdInfo = comobj comobj = vbNull dvdInfo.GetDiscID(strPath + "video_ts", discID) strDiscId = discID.ToString("x") Dim reader As Xml.XmlTextReader reader = New Xml.XmlTextReader(strDVDInfoUrl + strDiscId) Dim htDVDInfo As New Hashtable Dim htTitle As Hashtable Dim Name As String = "" Dim Value As String = "" While reader.Read() Select Case reader.NodeType Case XmlNodeType.Element Name = reader.Name Case XmlNodeType.Text Value = reader.Value If Name = "titleNum" Then htDVDInfo.Add("title" + Value, readTitle(reader)) Else If Not (htDVDInfo.ContainsKey(Name)) Then htDVDInfo.Add(Name, Value) End If End If Name = "" Value = "" End Select End While Catch FB_SDK.Freebrowser.SendLog("info", "Valeur de retour du graph directshow (hr) : [" & hr & "]") End Try Return htDVDInfo