STRUCTURE FICHIERS MIDIFILE - MIDI (BF2)

Signaler
Messages postés
1221
Date d'inscription
jeudi 23 août 2001
Statut
Membre
Dernière intervention
9 septembre 2018
-
Messages postés
73
Date d'inscription
lundi 23 octobre 2000
Statut
Membre
Dernière intervention
16 mars 2008
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/4501-structure-fichiers-midifile-midi-bf2

Messages postés
73
Date d'inscription
lundi 23 octobre 2000
Statut
Membre
Dernière intervention
16 mars 2008
2
arf... un parseur de fichiers midi...
C'est ce que je suis en train de faire... :D
Le mien est presque fini (mais ya encore quelques soucis de présentation...)

aller bon courage
@+
Messages postés
1221
Date d'inscription
jeudi 23 août 2001
Statut
Membre
Dernière intervention
9 septembre 2018

Il reste à corriger la ligne suivante : enlever les "" :
Open "Form2.CommonDialog1.FileName" For Output As #1

Tout le code est inutile dans Form2 (seule la Form est utile pour le cmddlg : en fait on peut se passer de la form avec CreateObject)
On Error GoTo ErrHandler
Dim CDLG As Object
Set CDLG = CreateObject("MSComDlg.CommonDialog")
With CDLG
.DialogTitle = "Choisir un fichier .mid"
.Filter = "Fichiers au format Midi|*.mid"
.InitDir = App.Path
.ShowOpen
End With
Open CDLG.FileName For Binary As #1 ' Ouvre le fichier.
Set CDLG = Nothing

Cela étant dit, c'est le premier parseur de fichier midi qui est fonctionnel sur VBFrance, bravo ! mais le resultat est un peu obscure encore, ca serait bien s'il y avait plusieurs niveaux de détails : un niveau debug ou il y a tout, et un niveau normale ou il n'y a que les notes avec le n° de canal sur lequel la note est jouée, ca serait sympa si quelqu'un pouvait le faire.
Autre idée : récuperer le nom du fichier en argument de la ligne de commande, comme ca en faisant un sendto MidiView.exe avec l'explorateur, on aurrait le fichier parsé, cool !
Messages postés
1221
Date d'inscription
jeudi 23 août 2001
Statut
Membre
Dernière intervention
9 septembre 2018

Maintenant, tu devrais corriger la ligne :
Open "Form2.CommonDialog1.FileName" For Output As #1
Je te conseille d'utiliser App.path au lieu de chemin en dur tq :
Form2.CommonDialog1.InitDir = "D:MIDIBVMIFIVIEW"
Messages postés
1221
Date d'inscription
jeudi 23 août 2001
Statut
Membre
Dernière intervention
9 septembre 2018

tu devrais corriger la ligne :
Open "D:MIDIVBMidiWiewMidiView.txt" For Output As #1