Silverfrost Forums

Welcome to our forums

renaming 3rd party DLLs

20 May 2013 8:12 #12239

If anyone has some ideas about this...

We have a 3rd party DLL which is subject to revision, hence it has version numbers in the name, e.g. 'lexus01033.dll'. Before releasing the DLL as part of our app, we want to make it 'generic', e.g. 'lexus.dll'. So...

1 we rename the DLL to 'lexus.dll' 2 we change our link scripts to load 'lexus.dll'

all seems fine until runtime, when 'lexus01033.dll' cannot be located.

There's a clue in the 'map' file:

18509b0c    app_main__imp__NULL                     c:\\duk6\\app_main.dll
18509b44    declib__imp__NULL                       c:\\duk6\\declib.dll
1850b168    llib__imp__NULL                         c:\\duk6\\llib.dll
1850b178    tikhonov__imp__NULL                     c:\\duk6\\tikhonov.dll
1850b188    Lexus01033__imp__NULL                   c:\\duk6\\lexus.dll
1850b194    scallib__imp__NULL                      c:\\duk6\\scal\\scallib.dll

So, it seems that there's a 'self-reference' to the original name that gets used at runtime.

Are there any tools that can resolve this?

K

20 May 2013 12:22 #12244

i may have found a 'kludge'!

using a hex editor on the DLL, i replaced:

'lexus01033.dll' with 'lexus.dll' followed by 5 'nulls' to keep the file length the same. relinked and hey presto, the 'old' name is no longer searched for at runtime!

K

Please login to reply.