Take the 2-minute tour ×
Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

I'm installing a custom application on a brand new Windows 2003 Server. A couple of DLLs need to be added and registered, and I have copied them to the server in the C:\WINDOWS\System32 folder -- which is where they have always been when we've had the application running on Windows NT and 2000.

However, when I try to register them using:

regsvr32 c:\windows\system32\nameoflibrary.dll

It gives back:

LoadLibrary("c:\windows\system32\nameoflibrary.dll") failed - 
The specified module could not be found.

The DLL is however right there. I can see it. If I copy the path to Windows Explorer and attempt to run it, it tells me that I can't run a DLL, so I know it's there. One minor complication is that the DLLs were built in VB5 -- but the VB5 runtime is installed on the server, so this shouldn't be a problem.

Any ideas?

share|improve this question
    
Is this a 64-bit Windows 2003 server? –  jscott Dec 5 '11 at 19:15
    
No, it's 32-bit. –  Cyberherbalist Dec 5 '11 at 19:17

2 Answers 2

up vote 2 down vote accepted

It could be that a dependant module is missing. You need to look at the getlasterror code to determine why the module was not found.

share|improve this answer
    
Yep. A module that was supposed to be installed by the main application didn't get installed. Once this was corrected, the two DLLs registered correctly. –  Cyberherbalist Dec 5 '11 at 23:34

Jim B. is probably correct. Get DependencyWalker and load {nameoflibrary.dll} -- it will show you which dependent DLL is missing.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.