A quick fix for the DLL .reloc problem

William Greathouse wgreathouse@smva.com
Wed Jul 2 10:34:00 GMT 1997


Hello All,

Attached is my contribution to the DLL .reloc section problem.

The invalid relocation table termination in the dll output has
caused me many problems when using gnuwin32 generated dll's with
other applications (particularly false 'Out of memory' errors).

John Cerney's dllcheck.exe has been wonderful for detecting this
problem, but I have had to rebuild as many as 40 (!) times to get
a 'clean' dll.  Upon looking at the generated file, I noticed that
nothing changes between builds except the table termination.  So,
I built a quick program to detect and _fix_ the .reloc table termination
problem.

NOTE:  This works for me, your mileage may vary.  The application was
built using cygnus b18 and mingw 0.1.4.  As such, it has no cygwin
version requirement/need.  I have successfully used the "fixed" dll's
with Microsloth Access and Excel.

Enjoy,
Bill

PS. I have thoughts of extending this to properly zero fill the "empty"
areas in applications/dll's to get around the "garbage in my output"
problems.  Anyone interested?
-- 
William Greathouse                | wgreathouse@smva.com  Email
SMV America, Engineering          | wgg@netcom.com        Email
8380 Darrow Road                  | (216) 425-1340 x4006  Voice
Twinsburg, OH  44087              | (216) 405-7684        FAX
dllfix.exe

-------------- next part --------------
A non-text attachment was scrubbed...
Name: dllfix.exe
Type: application/x-dosexec
Size: 4608 bytes
Desc: not available
URL: <http://cygwin.com/pipermail/cygwin/attachments/19970702/c88b767e/attachment.bin>


More information about the Cygwin mailing list