From: GS on 12 Feb 2010 11:12 I have asked similar to this here before and did not get any answers I could run with. I think the OP intends to provide a 'core' application that can be further enhanced via addons, either as OP-defined functions/features OR user-defined functions/features. In the case of OP-defined, these would be standard addons available from the OP that have been developed specifically for the target core app. In the case of user-defined, these would be addons the OP develops for the user specific to the user's needs. In either case the 'core' app could be upgraded without affecting the addons. The scenario might be similar to using a VB-IDE Add-in where, for example, new menus appear that are tied to procedures within the add-on. What's required is that our VB6 app is able to 'host' the addons. Any suggestions will be greatly appreciated! Kind regards, Garry
From: Nobody on 12 Feb 2010 22:09 Make ActiveX DLL's and let your app read a text file containing their names, then use CreateObject() to load them. Example: StockChartAddon1.Class1 StockChartAddon2.Class1 StockChartAddon3.Class1
From: C. Kevin Provance on 12 Feb 2010 23:03 "Nobody" <nobody(a)nobody.com> wrote in message news:eUjNunFrKHA.5896(a)TK2MSFTNGP04.phx.gbl... | Make ActiveX DLL's and let your app read a text file containing their names, | then use CreateObject() to load them. Example: | | StockChartAddon1.Class1 | StockChartAddon2.Class1 | StockChartAddon3.Class1 To add to Mystery Man's answer, you're installer for the add on would need to add that data to the master text to your main app could read it. Also, if it is your intention to show a form with vbModal, any kind of form from a different DLL would error out "Only one modal form, etc, etc" because technically, all those DLLs are in the same process space as your application.
From: Larry Serflaten on 13 Feb 2010 03:18 "C. Kevin Provance" <*@*.*> wrote > | Or use a standardized information class in each DLL to inform the main > | app what else is in the library. > > First I've seen that suggested. How does that work? I did something similar with VB4. I'd have to play with it again to get the specifics on how it all fit together, but from the best of my recollection: You'd use LoadLibrary to get the module into your address space You'd use CreateObject to get the object you wanted to use You'd release the object(s) and use FreeLibrary when done If all the add-ins had a class named Info, you could use that class to give the main app the information needed to use the library (menu item text, descriptions, class names, etc). I think in my own project the info class was actually an implemented interface by a class called 'System' so that all add-ins were accessed in the same way, as far as getting the info details. If all the add-ins are deployed to a predetermined location, you could loop through that folder to pick up the information at start-up.... LFS
From: David Kaye on 13 Feb 2010 05:25
"Henning" <computer_hero(a)coldmail.com> wrote: >As a lot of others, ship the complete app with parts of it disabled if not >activated by a new key. Microsoft finally learned to do that themselves. Last I heard, Windows Vista and 7 were one CD with various keys to unlock features. |