Thread: [GD-Windows] Mysterious DLL's
Brought to you by:
vexxed72
From: Chris R. <c....@gm...> - 2004-09-08 20:05:37
|
Coming from a console background and being more of a 3D-programmer than a systems coder, I had a quite confusing moment today. After finishing a large chunk of rendering code I decided to try out my code on other machines before checking in - with the result that every machine without visual studio installed complained about missing dlls (msvcp71.dll and msvcr71.dll in particular). A quick search for files showed that several programs (photoshop, etc) all include their own copies of these and other dlls in their own directories.=20 What is the sense of having a dynamically linked lib if every program provides it's own copy? Back in the old days of my unix/linux background I thought dll meant one image of the instruction code of the lib in memory for multiple programs - by providing several copies of the same library this benefit is destroyed.=20 Another question I had today was if I were to distribute my program, am I to include my own copies of the same libraries as other programs do, or is there any common practice I missed for dealing with these dlls? I hope these questions are not too simple - MSDN had provided me with a wealth of information regarding everything, except answers to my specific questions.=20 many thanks, Chris=20 |
From: Jon W. <hp...@mi...> - 2004-09-08 20:30:30
|
There days, MS has pretty much capitulated on the "sharing" aspect. http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsetup/htm l/dlldanger1.asp http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsetup/htm l/sidebyside.asp Cheers, / h+ -----Original Message----- From: gam...@li... [mailto:gam...@li...]On Behalf Of Chris Raine Sent: Wednesday, September 08, 2004 1:21 PM To: gam...@li... Subject: [GD-Windows] Mysterious DLL's Coming from a console background and being more of a 3D-programmer than a systems coder, I had a quite confusing moment today. After finishing a large chunk of rendering code I decided to try out my code on other machines before checking in - with the result that every machine without visual studio installed complained about missing dlls (msvcp71.dll and msvcr71.dll in particular). A quick search for files showed that several programs (photoshop, etc) all include their own copies of these and other dlls in their own directories. What is the sense of having a dynamically linked lib if every program provides it's own copy? Back in the old days of my unix/linux background I thought dll meant one image of the instruction code of the lib in memory for multiple programs - by providing several copies of the same library this benefit is destroyed. Another question I had today was if I were to distribute my program, am I to include my own copies of the same libraries as other programs do, or is there any common practice I missed for dealing with these dlls? I hope these questions are not too simple - MSDN had provided me with a wealth of information regarding everything, except answers to my specific questions. many thanks, Chris |
From: mike w. <mi...@ge...> - 2004-09-08 21:21:26
|
yeah the big issue is when people install programs that use older versions of said dll's - if windows loads a previous 'older' version into memory, it causes all kinds of issues. even though it MIGHT be the same dll name, it might not be the same date of build. i recall this being a major problem with the vbrun300.dll and similar dll's 'way back when'. i worked tech support for a visual basic CRM application at the time and we had never ending problems with people having multiple copies of dll's all over the machine and windows not unloading them properly... we do ship these particular dll's with our own engine runtime, simply for this very reason - there is a chance that someone doesn't have it, or simply doesn't have them in their system path, so better safe than sorry, ship it if your app needs it. cheers mike w www.gekidodesigns.com Jon Watte wrote: > There days, MS has pretty much capitulated on the "sharing" aspect. > > http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsetup/htm > l/dlldanger1.asp > http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnsetup/htm > l/sidebyside.asp > > Cheers, > > / h+ > > > -----Original Message----- > From: gam...@li... > [mailto:gam...@li...]On Behalf Of > Chris Raine > Sent: Wednesday, September 08, 2004 1:21 PM > To: gam...@li... > Subject: [GD-Windows] Mysterious DLL's > > > Coming from a console background and being more of a 3D-programmer than > a systems coder, I had a quite confusing moment today. After finishing a > large chunk of rendering code I decided to try out my code on other > machines before checking in - with the result that every machine without > visual studio installed complained about missing dlls (msvcp71.dll and > msvcr71.dll in particular). A quick search for files showed that several > programs (photoshop, etc) all include their own copies of these and > other dlls in their own directories. > > What is the sense of having a dynamically linked lib if every program > provides it's own copy? Back in the old days of my unix/linux background > I thought dll meant one image of the instruction code of the lib in > memory for multiple programs - by providing several copies of the same > library this benefit is destroyed. > > Another question I had today was if I were to distribute my program, am > I to include my own copies of the same libraries as other programs do, > or is there any common practice I missed for dealing with these dlls? > > I hope these questions are not too simple - MSDN had provided me with a > wealth of information regarding everything, except answers to my > specific questions. > > > many thanks, > Chris > > > > > > > ------------------------------------------------------- > This SF.Net email is sponsored by BEA Weblogic Workshop > FREE Java Enterprise J2EE developer tools! > Get your free copy of BEA WebLogic Workshop 8.1 today. > http://ads.osdn.com/?ad_id=5047&alloc_id=10808&op=click > _______________________________________________ > Gamedevlists-windows mailing list > Gam...@li... > https://lists.sourceforge.net/lists/listinfo/gamedevlists-windows > Archives: > http://sourceforge.net/mailarchive/forum.php?forum_id=555 > > |
From: George G. \(BattleGoat\) \(E-mail\) <ge...@ba...> - 2004-09-08 21:37:03
|
In the old days this was a great idea, of course, but the customer support issues have now far outweighed the benefits. Memory is cheap, telephone support is not :-) And on top of incompatible dll update versions and other stability issues, there is the whole new ballgame of security. So to the original question - yes, everyone is intended to keep their own DLLs, and in their own directories. -- George. - George Geczy - Lead Programmer, BattleGoat Studios - www.supremeruler2010.com - "Designing the Next Generation of Intelligent Strategy Games" > -----Original Message----- > From: gam...@li... > [mailto:gam...@li...]On Behalf Of > Jon Watte > Sent: Wednesday, September 08, 2004 4:30 PM > To: gam...@li... > Subject: RE: [GD-Windows] Mysterious DLL's > > > > There days, MS has pretty much capitulated on the "sharing" aspect. > > http://msdn.microsoft.com/library/default.asp?url=/library/en- > us/dnsetup/htm > l/dlldanger1.asp > http://msdn.microsoft.com/library/default.asp?url=/library/en- > us/dnsetup/htm > l/sidebyside.asp > > Cheers, > > / h+ > > > -----Original Message----- > From: gam...@li... > [mailto:gam...@li...]On Behalf Of > Chris Raine > Sent: Wednesday, September 08, 2004 1:21 PM > To: gam...@li... > Subject: [GD-Windows] Mysterious DLL's > > > Coming from a console background and being more of a > 3D-programmer than > a systems coder, I had a quite confusing moment today. After > finishing a > large chunk of rendering code I decided to try out my code on other > machines before checking in - with the result that every > machine without > visual studio installed complained about missing dlls (msvcp71.dll and > msvcr71.dll in particular). A quick search for files showed > that several > programs (photoshop, etc) all include their own copies of these and > other dlls in their own directories. > > What is the sense of having a dynamically linked lib if every program > provides it's own copy? Back in the old days of my unix/linux > background > I thought dll meant one image of the instruction code of the lib in > memory for multiple programs - by providing several copies of the same > library this benefit is destroyed. > > Another question I had today was if I were to distribute my > program, am > I to include my own copies of the same libraries as other programs do, > or is there any common practice I missed for dealing with these dlls? > > I hope these questions are not too simple - MSDN had provided > me with a > wealth of information regarding everything, except answers to my > specific questions. > > > many thanks, > Chris |