Hi,
If I use a function from a DLL, is there a way to imbed that into my DLL or a way to distribute it with the executable? can't rely that everybody would have the required DLLs. Thanks
Printable View
Hi,
If I use a function from a DLL, is there a way to imbed that into my DLL or a way to distribute it with the executable? can't rely that everybody would have the required DLLs. Thanks
VB doesn't do static linking, but the PDW should include the DLL in question if you have it set in the project references
You cannot embed a DLL with a VB application exe <as far as i know - but i'm pretty sure it's so - i've read it on this site before>.
You are right though - you cannot assume that someone has the dll your app uses.
The best thing to do is to use an application like installshield to package your application (it finds out what dlls etc your project needs and will include them in a setup).
However, granetd that not everyone can get their hands on this program - you can use the Package and Deployment Wizard that comes with VB to creaet a Dependency File. This is a text file that lists all the dlls (and ocxs etc) that your application requires. You then know which Dlls are needed to be included when you distribute your application. So you distribute your app exe as well as the dlls it uses (it may well be the case that your app needs even moredlls and ocxs than you realise).
Unfortunately - in my opinion - the relience of the VB programs on so many runtime files is one of the major drawbacks with the language. I find it considerable easier to actually write theprograms than to distribute them. There;s always someone with some old or weird-ass combination of dlls that will make your app crash.
I'm not saying dlls are bad - but it can be very tricky to get the setup correct.
HTH
Mark
Thanks for the info :)