- Custom Development
There are two ways to find missing DLLS.
1) Use the following code to list the DLLs a python script uses
from modulefinder import ModuleFinder
finder = ModuleFinder()
This will report all the DLLs (modules) the script uses. You can then check to verify that each of them is installed on your computer. This can be automated with a script.
2) Use Process Monitor
SysInternals Process Monitor monitors all processes within a system and displays information about each of them. You can filter only the process you are having problems with and look for NAME_NOT_FOUND errors. If these are caused by a CreateFile event, the DLL listed cannot be found.
Sometimes DLLs can me mismatched with the program trying to use them. For instance, a 32-bit version of Python cannot use 64-bit DLLs (and vice versa). In order to determine what type of DLL you have installed, perform the following:
dumpbin /headers <dll-in-question>
The two things to check are:
FILE HEADER VALUES → machine should be correct for you program (x86) OPTIONAL HEADER VALUES →magic should be correct for your program (PE32, PE32+, PE64)
Microsoft Windows searches for DLLs in a specific order.
Note: LIBPATH is not used.