bfraser at geoanalytic.com
Fri Jan 29 10:46:35 EST 2010
Yves Moisan wrote:
>> The steps:
>> 1. Use MS4W 3.0 Beta 7 (or better when available). The gdal_SDE.dll and
>> ogr_SDE.dll are compiled with a gdal17DEV.dll shipped in MS4W (in MS4W v2.3.1
>> they are compiled with gdal15.dll and won't work with MS4W 2.3.1). I copied the
>> gdalplugins dir (with gdal_SDE.dll and ogr_SDE.dll) to be under cgi-bin.
>> 2. Since the MS4W 3.0 Beta 7 is a zip style install, you'll need to set paths to
>> ensure Apache and mapserver can find msvcr90.dll and msvcp90.dll (they're in the
>> apache\cgi-bin dir I think).
> OK. Using MS4W beta 10, "I copied the
>> gdalplugins dir (with gdal_SDE.dll and ogr_SDE.dll) to be under cgi-bin."
> That is, I copied the directory in MS4W's Apache cgi-bin and left the
> *_SDE.dll in their "ignored" sub-directory.
Not good. The GDAL dll looks in .\gdalplugins dir for dlls (not any sub-dirs
> I copied msvc?90.dll (? = r, p and v) from my previous Beta7 install
> right in MS4W's Apache cgi-bin (so I guess that means I do not have to
> set paths for mapserv and Apache right?). Jeff : should those dll's be
> included in 3.0 final ? I guess they're needed for SDE. I can file a
> ticket if you want.
No ticket required. The reason for all this dll copying is so the applications
can find the dlls. MSW4 in its final version is an installer that sets the
paths through the apache conf file (or the setenv.bat if you want to use
interactive commands). Of course neither will work if you are using IIS.
> I've put the sde.dll, sg.dll and pe.dll from my ArcGIS (ArcView) 9.3.1
> local install in MS4W's Apache cgi-bin.
Should be fine.
> Technically, I'm all set. When I go to my browser, I see zilch. Debug
> 5 in my mapfile and here's the error output :
> [Fri Jan 29 09:35:20 2010].151000 freeLayer(): freeing layer at
> [Fri Jan 29 09:35:20 2010].151000 msGetSymbol(): General error message.
> Can't load requested dynamic library:
> [Fri Jan 29 09:35:20 2010].182000 loadCustomLayerDLL: General error
> message. Failed to load dynamic Layer LIB:
> I'm pretty sure some of the information relative to the connection isn't
> quite accurate, but I guess that shouldn't refrain the
> msplugin_sde_93.dll to load.
> Do I need a special dll to connect to 9.3.1 ? msplugin_sde_93.dll
> should suffice I guess. Pointers appreciated.
As Daniel points out, using DEPENDS.EXE is almost mandatory for solving these
kinds of problems. I also use procmon from Microsoft/sysinternals to see which
files (including dlls) a program is trying to load.
More information about the MS4W-Users