Object.factory from shared libraries

krzaq via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Fri Sep 26 07:24:35 PDT 2014


On Friday, 26 September 2014 at 14:14:05 UTC, Jacob Carlborg 
wrote:
> On 26/09/14 14:37, krzaq wrote:
>> I'd like to extend my program's functionality from plugins, 
>> that'd be
>> loaded by name (or not) as requested by the config file. Is it 
>> possible
>> to throw in a few dlls/sos implementing those new modules into 
>> a
>> directory and hope that they will be all loaded and available 
>> to
>> Object.factory in the main executable?
>>
>> I hope I'm clear enough.
>
> If you either enumerate all dynamic libraries in a directory, 
> or a list from a config file, then use dlopen on all libraries. 
> Then I think Object.factory should work. But dynamic libraries 
> are basically only working on Linux.

That would be satisfactory to me, except for the linux-only part.

In that case, I think I'll simply try to call filename() as the 
factory function in each library - that should work everywhere, 
right?


More information about the Digitalmars-d-learn mailing list