vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
nochmals MIDI In... 
Autor: Bunneh
Datum: 20.05.10 15:05

Hallo allerseits,

ich schreibe gerade ein Programm, das unter anderem MIDI Signale von einem Keyboard empfangen und dann interpretieren soll. Nach stundenlangem Googlen bin ich nicht wesentlich weiter. Mir fehlt der entscheidende Schritt, dass ein event bei Tastendruck ausgelöst wird, dem der MIDI-Befehl übergeben wird. Hier im Forum gab es die bis jetzt beste Hilfe (http://www.vbarchiv.net/forum/read.php?id=14&t=2752&i=2752&v=f), aber leider funktioniert das Beispiel dort nicht ohne weiteres...

Hier ist mein bisheriger Code: Diese Klasse wird in einem Minimalbeispiel auf Button_Click erstellt. Es erscheint einmal die msgbox "Midi-Test", wenn die Klasse erstellt wird und ich .OpenMIDI aufrufe, aber sonst passiert nichts...

Public Class MIDI_Handler
    Declare Function midiInOpen Lib "winmm.dll" (ByRef lphMidiIn As Integer, _
      ByVal devIDIn As Integer, _
                                                 ByVal cbfuncIn As test, ByVal _
                                                 cbdataIn As Integer, _
                                                 ByVal cboptionsIn As Integer) _
                                                 As Integer
 
    Public Const CALLBACK_FUNCTION = &H30000
 
    Public Const MM_MIM_OPEN = &H3C1
    Public Const MM_MIM_CLOSE = &H3C2
    Public Const MM_MIM_DATA = &H3C3
    Private Const MIDI_IO_STATUS = &H20&
    Public MidiLocation
 
    Public Delegate Function test(ByVal hmidiIn As Integer, ByVal wMsg As _
      Integer, _
                                  ByVal dwInstance As Integer, ByVal dwParam1 _
                                  As Integer, _
                                  ByVal dwParam2 As Integer) As Boolean
 
    Public Function MidiInProc(ByVal hmidiIn As Integer, ByVal wMsg As Integer, _
      ByVal dwInstance As Integer, _
                               ByVal dwParam1 As Integer, ByVal dwParam2 As _
                               Integer) As Boolean
        MessageBox.Show("Midi-Test")
    End Function
 
    Public Sub OpenMIDI()
        Dim rcin As Integer
        rcin = midiInOpen(MidiLocation, 0, AddressOf MidiInProc, 0, _
          CALLBACK_FUNCTION)
    End Sub
End Class
Hat jemand eine Idee, wie es weitergeht? Danke im Voraus für jegliche Hilfe!
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
nochmals MIDI In...5.462Bunneh20.05.10 15:05
Re: nochmals MIDI In...4.191Bunneh02.06.10 11:24
Re: nochmals MIDI In...4.237ModeratorDaveS02.06.10 13:21
Re: nochmals MIDI In...4.327Bunneh28.08.10 15:45

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel