Problème d'accés memoire, pas tout le temps
Publié : sam. 03/août/2013 10:01
Bonjour,
voilà j'ai retrouvé une procédure qui permettait de récupérer la durée d'une vidéo ou d'un audio.
j'ai compiler pour essayé (uniquement sur des mp3), la procédure fonctionne mais pas avec tous les mp3
.
Donc j'ai du mal a comprendre pourquoi. Pensez vous que cela puisse venir de la version du mp3 ?
je vous poste la procédure, dites moi si chez vous ça fonctionne avec tous vos fichiers ? Merci.
Et si non avez vous une idée de l'erreur ?
Voici l'erreur renvoyé par le compilateur:
@++
voilà j'ai retrouvé une procédure qui permettait de récupérer la durée d'une vidéo ou d'un audio.
j'ai compiler pour essayé (uniquement sur des mp3), la procédure fonctionne mais pas avec tous les mp3

Donc j'ai du mal a comprendre pourquoi. Pensez vous que cela puisse venir de la version du mp3 ?
je vous poste la procédure, dites moi si chez vous ça fonctionne avec tous vos fichiers ? Merci.
Et si non avez vous une idée de l'erreur ?
Code : Tout sélectionner
Procedure Time(Filename$)
Structure MovieStruc
Movie.IGraphBuilder
MediaControl.IMediaControl
MediaEvent.IMediaEventEx
Window.IVideoWindow
Audio.IBasicAudio
Video.IBasicVideo
MediaSeeking.IMediaSeeking
State.l
EndStructure
If Filename$
InitMovie()
*movie.MovieStruc = LoadMovie(0,Filename$)
*movie\MediaSeeking\GetDuration(@Duration.q)
Millisecs = Duration / 10000
Duration / 10000000
Hours = (Duration / 3600)
Minutes = (Duration / 60) - (60 * Hours)
Seconds = Duration - (60 * (Duration / 60))
Hours$ = Str(Hours) : Minutes$ = Str(Minutes) : Seconds$ = Str(Seconds)
If Seconds < 10 : Seconds$ = "0" + Seconds$ : EndIf
If Minutes < 10 : Minutes$ = "0" + Minutes$ : EndIf
If Hours < 10 : Hours$ = "0" + Hours$ : EndIf
MessageRequester("Durée", "La durée est de : "+ Hours$ + ":" + Minutes$ + ":" + Seconds$, 0)
EndIf
EndProcedure
Filename$ = OpenFileRequester("",Filename$,"",0)
Time(Filename$)
J’obtiens cette erreur a la ligne 17.Accès mémoire invalide (erreur de lecture a l'adresse 24)
@++