ProjectMIDI Developer Information.
In this section I will describe how ProjectMIDI is implemented and how you can extend it by creating your own .NET assemblies. The source code for a sample assembly is available. You can download it from the Downloads page.
A couple technical articles are available on CodeProject which provide instructions:
- ProjectMIDI: an extensible set of small MIDI .NET programs
- ProjectMIDI part 2: Creating a custom ProjectMIDI Assembly
Note that these articles were written for the original version 1. I will be updating these articles, so be sure that you get the updated articles.
What you will need
You will need Visual Studio .NET 2005. ProjectMIDI is extended by creating new .NET assemblies. Creating a new Applet or Device Module involves creating a new .NET 2.0 assembly which contains a class which implements particular interfaces defined by ProjectMIDI. It also uses custom attributes to allow ProjectMIDI to interconnect events and actions (special event handlers) using reflection.
These interfaces and custom attributes are described in the Architecture section.
ProjectMIDI implements late binding of .NET assemblies. Therefore, new assemblies can be created, and ProjectMIDI will work with them without having to know about them.