Integration of plug-ins in a dialog based app
Posted on 2004-11-29
Hello, first I'll talk about the application in general, then what and how I expect plug-ins to work in it.
First of all, I have an MFC dialog based application which can communicate in plain text to servers or act as a server (TCP/UDP) and I want to integrate some plug-ins to support automation of specific procotol, like FTP, IRC, etc... So I thought instead of hard coding them I would have plug-ins you can load when you want to add support to some particular protocol. I will have an option window where you can add and select which plug-ins will be used and configure them. That window will contain a tab control which first tab is the plug-in selection and other tabs are added with each plug-ins you load so you can configure them.
More technically, when a plug-in is loaded, it will parse incoming text, like:
Received buffer = "PING :0123456\r\n"
and if it match one of the right command, like the PING above, will answer with the proper command:
Send to server : "PONG irc.someserver.net :0123456\r\n"
This is the most important part of the job I need to have working to make those plug-ins useful.
Now I would like to know what is the best way to implent this kind of architecture, how can I make the plug-ins access variables of my main program and receive messages. I'm fairly new to DLLs and only know how to make static DLLs as now.
If you need Any information, just ask, I will be pleased to answer back! Any links, sample code, information or comments will be greatly appreciated.
Thanks in advance!