You can create a special form of MIDI output device called a "thruing driver." An application could connect a MIDI input device to this throughput device driver and then connect the MIDI throughput device to as many MIDI output devices as needed. To implement a throughput device, use the DRVM_ADD_THRU, DRVM_REMOVE_THRU, and DRVM_IOCTL messages.