Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Ideas to develop a SDK

Status
Not open for further replies.

Lewin

Programmer
Mar 2, 2003
5
0
0
BR
Hello,

I need to write a SDK to allow other programmers to write Plug-Ins for my application using Visual C++ (maybe in the future other languages as well). In fact, I've seen some samples on the net like Wiamp, Netscape, 3D-FTP... but they are all too complex. Wasabi (the Winamp SDK), for example, is all written with raw Win API calls and programmers need to know C++ to be able to write the plug-ins.

I thought about writing something more simple like an MFC frame work application (exe) to load into itself ActiveX Controls at run-time (Saurabh Dasgupta wrote an article about that in
Along with this executable file and also being part of the SDK, I intend to distribute some DLL's to provide access to the business rules of my application. I want these DLL's to be called from any language, not only Visual C++. I am still to decide if I use COM or create a "Universal" DLL as described by Jonathan Wood in the article exposed in Any other suggestion or your opinion on this issue will be apreciated a lot.

In order to prevent the main application from hosting dummy controls, or controls that have nothing to do with the application itself, I will implement a component category that will also allow me to add a 'Plug & Play' plug-in feature, so every time the main program starts, it will look for new registered components based on that category and if found add them to its database.

The standardisation that the ActiveX technology provides is nice because it will make the development of the plug-ins easier and language-independent, but in the other hand it is unfavorable because I would not like to see pieces of my application running in Internet Explorer, Microsoft Word or other third-party tools. Actually, I need to ensure that the unique way to run the plug-ins is using the host application I provide, otherwise the project's purposes will no be achieved.

Please, let me know your opinion here.

Thanks in advance

Lewin Schwarzwasser
Software Developer
 
You should write Your own classes (like MFC) and use them as interface for SDK. Then nobody can wrong use Your application and plugins. An easier way - make a *.lib with Your interface functions, and You can give users this lib and headers only.
 
Plugins on VC6 and VC7 are quite different. Whatever you decide make sure it will cater for both.
 
xwb wrote:

>>Plugins on VC6 and VC7 are quite different. Whatever you >>decide make sure it will cater for both.

I am working with VC6, are you talking about managed code? Please, explain it better.



 
Nothing about managed code: just that VC6 plugins don't work on VC7. A lot of the scripting stuff in VC7 is in XML (a bad excuse for more disk space and a faster processor) and they've renamed a few things. Workspaces (dsw) are now solutions (sln). Projects (dsp) are now categorized (vcproj, csproj etc). Basically if your plugin creates projects, it has to generate stuff with a different format for VC7.
 
OK, now I understand what you meant and you are completely right, of course.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top