I have a question about using DLL's. On Linux I've used modules (.so files), dlopen() to load them, dlclose() to close them and dlsym() to call a function from each module.
I recently looked at a windows program and thought I would try my luck doing this on Windows, so I thought about using a DLL as there are not dl*() functions for modules or none that I've found.
My question is would I have to load the entire DLL into memory or can I simply have the DLL there call the proc each time I needed it, and where abouts would be a good start to look? I've done some basic searches on msdn and thought I would ask for a little more of a nudge.
Basically, I have the core program which basically does parsing and runs the program and I want to have an easily updatable option, so I thought I could have a "module" for each main feature, am I heading in the right direction or should I just give up and keep researching windows programming before I look into this area?
What language (C or C++ or MFC) and what IDE (compiler) do you use?
DLLs can be statically (at build time) or dynamically (at run time) linked.
Look at LoadLibrary() and GetProcAddress() and FreeLibrary()
Use linker in IDE to add DLLs .lib file or look at the #import directive.
Well, me coming from a Linux background, I'm more inclined to look at Static from what you've suggested, I found something on MSDN about delay loading DLL's and such just after I posted the thread on here which looked good. I think dynamic is the way to go from what I was reading, lets play and see what happens, thanks for that