Vista MIDI Tool

"Fix" your default MIDI output device on Windows Vista, Windows 7 or Windows 8.

Download (requires .NET 2.0).

What's this for?

It can be used to change the default MIDI output device.

Several changes were to the sound subsystem between XP and Vista. Whilst this is generally a good thing, some things are noticably missing, such as - at least, in my sound card's case - hardware MIDI support.

In fact, the MIDI support is still be there, but unlike on XP where the MIDI output device could be picked from the control panel Vista, 7 or 8 don't appear to provide such an option.

Does it work?

Sort of.

Under previous versions of Windows, device 0 would be the MIDI mapper. Thus, a program could use MIDI device 0, and the mapper would pick which MIDI output device to send your output to.

Under Vista and later there is no MIDI mapper and so the software MIDI synth appears as device 0. Therefore an app using device 0 will still use the software synth. If it uses the default device (-1) it should end up using whichever device you selected using this tool.

How do you use it?

Double-click "Vista MIDI Fix.exe", pick your hardware MIDI device from the dropdown box, click OK.

You shouldn't need to run the software as an administrator; it works for me without any UAC prompting. Source is included. This is just a crude front-end to what boils down to changing a single registry setting.

Where's my hardware MIDI device? (Creative)

I had a Creative Audigy Value. Creative's Vista drivers did not (as of 2007) appear to support hardware MIDI - they may do by now, but I can no longer check this myself.

It might work if you run the drivers in XP SP2 compatibility mode, when I tried this I got some extra features that I didn't get when I installed them straight, but was still missing tools.

The best solution I found was to install the XP drivers from the original CD-ROM bundled with your sound card. There are some pros and cons to this method, not sure what applies to other cards (just the ones I've noted).