Hello there I need to find out how I can get my code to process messages My last function in my code <StartMidi(hMidiIn}> is meant to send a message to the Message Procedures listed below depending on the returned value. I also added Application.ProcessMessage but that didnt work Would anyone know where I went wrong? Also does anyone know what this means?? I dont code in C/C++ so I have to convert to Delphi. while ((eventCount < nbufferEvents) && (PutMidiOut(hMidiOut, (lpMidiBuffer + eventCount)) == 0)) eventCount++; Here is my code below... Edit8: TEdit; procedure Button4Click(Sender: TObject); Protected procedure MidiData(var Message: TMessage); message MIDI_DATA; procedure OutBufferReady(var Message: TMessage); message OUTBUFFER_READY; procedure TForm1.MidiData(var Message: TMessage); begin Edit8.Text := 'Hello Benny'; end; procedure TForm1.OutBufferReady(var Message: TMessage); begin Edit8.Text := 'Hello Benny'; end; procedure TForm1.Button4Click(Sender: TObject); begin StartMidiIn(hMidiIn); Application.ProcessMessages; Thanks Ben _________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com. Share information about yourself, create your own public profile at http://profiles.msn.com. --------------------------------------------------------------------------- New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz To UnSub, send email to: [EMAIL PROTECTED] with body of "unsubscribe delphi"