I think that we can easily combine two approaches: 1. Try to copy msvcr71.dll from system32. 2. If it does not exist there, try to download it 3. If it is impossible, print a message.
This is probably the best we can do. Without distributing msvcr71.dll from Harmony site. SY, Alexey 2006/12/20, Geir Magnusson Jr. <[EMAIL PROTECTED]>:
Ivanov, Alexey A wrote: >> -----Original Message----- >> From: Geir Magnusson Jr. [mailto:[EMAIL PROTECTED] >> Sent: Wednesday, December 20, 2006 1:41 PM >> To: [email protected] >> Subject: Re: [build] Downloading dependencies >> >> >> >> Tim Ellison wrote: >>> Ivanov, Alexey A wrote: >>>> In default installation WinXP does not have this library in > system32. >>>> This library is installed by Visual Studio 2003 and may be installed > by >>>> other software which was compiled with Visual Studio 2003 (which is >>>> v7.1). Visual Studio 2002 (v7.0) has msvc70.dll, if I remember >>>> correctly. >>>> >>>> That is it may happen system lacks for this DLL. And Microsoft >>>> recommends avoiding copying DLLs to system32 when installing an >>>> application. Thus we better distribute this DLL in snapshots and > further >>>> releases because users may not have it. >>>> >>>> On the other hand, if a person has Microsoft compiler installed, the > DLL >>>> will most likely be in system32. >>>> >>>> That's it. >>> Agreed -- we were getting that DLL so we could distribute it to our >>> users who may not have the compiler installed. >>> >>> If we think it is more reliable to grab the DLL from system32/ than >>> download it we can do that. I guess we look for a env var to figure > out >>> where windows is installed... >> >> Ok - so we seem to be agreed that : >> >> 1) We can't count on it being on a user's machine >> >> 2) We don't need to download it because it will be part of the tool > chain >> 3) We need to then find it. >> >> Could we do something like >> >> GetModuleFileName(LoadLibrary(....), buffer, size); > > I guess it will work. But this should be in an application and the DLL > must be available in PATH so that LoadLibrary is able to load it. > > I think it's easier just to copy it from system32 folder right from > build.xml. If a user is going to compile Harmony on Windows, they need > Microsoft compiler installed and thus they will have the DLL in > system32. > I thought it wasn't guaranteed to be there, even if MSVC installed? if that's not the case - if it is actually guaranteed to be there - then yes, I agree geir > > Regards, > Alexey. > >> to figure it out? > > -- > Alexey A. Ivanov > Intel Enterprise Solutions Software Division
