Hello. I have done several searches on this website to find a decent plugin engine for Visual Basic. (By plugin engine, I mean: the ability for a program to look in a folder for plugin files [most likely a .dll file and an image to represent it], and load that plugin at startup.) All of the tutorials that I've found have been in C#. Unfortunately, I don't understand a lot of C#, and when I've tried to comprehend and convert it, I've failed.
Here's what I want to do:
-Apply certain attributes to the plugin. For example, if it's meant to modify the interface of the program, add an "Interface" tag to it. If it's supposed to only modify a certain form, include the name of the form as the tag.
-The plugin will be able to modify interface elements of the program. For example, if the plugin has a "Name" attribute attached (either embedded in a text file or the actual dll) to it, then it will put a button on the form with the name of the plugin on it. If it has an icon included, the button's image attribute will be set to the icon of the plugin.
-I want to be able to use Windows Forms and Controls as the interface of some of the extensions, if it's not meant to be included as part of the main window's interface.
-Be able to detect which plugins the user has installed and display them in a list. If you click the name, it will display some information about it in a panel.
-Be able to choose which plugins to start when the program starts.
Is there a way I could do any of this with Visual Basic? Are there any starting points I could work from at least? For example, what basic things do I need to know to be able to work on my own plugin engine?
Thanks in advance for the help!