I guess I am talking about system libraries and functionality… ?
Not exactly sure what the difference is… but to make it simple… I basically want new menus (processing options) to show up depending on the presence of x module…
Well with a simpler local system like plugins it’d be more of if file exists then.
I think for system libraries you’ll have to use declares to find out if they’re available.
What about the contents of the module/file to distribute… if everything is already in the main compiled app… what’s the point of distributing a file ? With what content ? Can’t a user simply create a file named MyModule and just enable the disabled modules ?
Do you mean you build a “main application” and then as people license other “modules” they get other “files” and install them and new features just appear in the menus & windows ?
If the files are data files, then the presence of a file name doesnt make the app work… the data itself has to mean something, such as a list of hotel locations.
If the file causes new program functionality to appear, one way to do it might be to do this in EnableMenuItems
if bFileWasPresent then
Featuremenuitem.enabled = true
else
Featuremenuitem.caption = "-" //turns the menu into a separator
Featuremenuitem.enabled = false //but add similar checks into the menu handler too
end if
bWasFilePresent can either be a boolean that records whether the file was there, OR
it can be set to true if the file exists and contains data that is valid, such as a serial number, some text or a hashed value that only you know.
Simply creating a blank file wouldnt do the trick, even if you knew the name the file should have.
It sounds like you have all the parts and pieces already in one main app. The way I do is set a global variable in my app to keep track of the modules that are available.
If a user orders more modules, simply send him a new license code that contains the information needed to unlock the desired modules.
Yes, this is what I had thought/used until now… --> you build the entire thing as one application with all the “modules” in it and turn things on and off via a license key or some other mechanism
The only problem I see with that is that as the project grows bigger Xojo’s IDE becomes slower… it can be painful sometiem to wait a minute for a couple of controls to get duplicated…
But anyway… thanks everybody for the clarification…
R