Plugin Manager.

Official support for: smartelectronix.com
Post Reply New Topic
RELATED
PRODUCTS

Post

Hi there.

First of all, I want to thank you for all great plugins you people created.

Second, I have a question about VST problem so I thought that some of you here may have some thoughts, ideas....

Is there any way to somehow redirect DLL loaded by host application with LoadLibrary call in this manner: Host will call my dll and I have to choose from the list of other dlls and to return the one it will use. This is something I need to create VST plugin manager

All plugins in different VST hosts are usualy placed in one long menu line by line. I need to replace that menu with the one containing only one plugin, mine, and then mine will return the choosen VST plugin.

I am aware that I can achieve this by creating clone of eatch function in plugin API and simply transfer calls to desired plugin when VST host calls it. But I don't like this approach since I will have to recompile application for every API change among other things like my dll will be loaded all time etc..

So, I am searching for some other mechanism. Somehow I must change the return value of LoadLibrary call with the handle of the other dll witch will be loaded by my dll.

This is normal operation

VSTHost code to load plugin:
* hEffect = LoadLibrary( "some plugin.dll" )


But now my manager handle plugins so this line will always be:

hEffect = LoadLibrary( "my plugin.dll" );

and then my plugin must do the same as (*) and somehow set hEffect to handle of "some plugin.dll".


I would appriciate every tip or advice.

The only other idea I have is to traverse handle tables of VSTHost and replace handle to my dll with handle of dll I opened. But this is nasty hack, and I don't even know is it possible to do such thing, above all it must use Native API system calls witch are very badly documented.


Thx.

--------------------
www.r-moth.com

Post Reply

Return to “Smart Electronix”