I have done a ton of work, all made successful an inch at a time, with BASS_VST and BASS/BASS_MIDI, playing MIDI files using a mixture of SF2 and VSTi. Just amazing that this is even possible, but works beautifully. I am using specific VSTi's, being free or low cost (because of the users who will use my software), and one of them is the demo version of Addictive Keys. The weird thing is doesn't play the first few notes.
I queried the company and their response was "[Addictive Keys] needs to load new samples and can therefore miss a few midi notes for that time. For our plugin to actually load sounds, the audio must be driven. This mean that it's not enough for the GUI thread to idle. The plugin must receive some request to process audio to begin loading samples, either from the GUI thread or from the audio thread. There doesn't need to be any midi messages for the samples to load, it will start as soon as the audio is driven. Unfortunately, there is no way of knowing when the loading is finished, as it depends heavily on where they are stored."
I've used BASS_VST_ProcessEvent to throw MIDI notes at it to try and "drive" it, all to no avail. I've queried them again on what will trigger the loading of samples, but it's possible they were slightly offended by my observation that it seemed strange to delay loading until they receive data which must then be lost.
If anyone has any prior experience of this situation, or suggestion of what the likely solution might be, to trigger their sample loading, I'd love to hear it. I realise my question is not actually about BASS_VST - BASS_VST is doing its job brilliantly.