Project

General

Profile

Missing DLLs in MSVS

Added by Sebastian Fett over 5 years ago

Hey,

I am currently stuck after setting the Debugging Environment as suggested in other threads to either my WinDLL Folder or my WT/bin folder. Selecting the "load from symbol server" fixed the bug that the win32 DLL's couldnt be found so currently I am stuck with the Error Log of:

  'WebguiVW.exe' (Win32): Loaded '\\ad.itwm.fhg.de\p\tv\FPM_VW_Betanken\VW-Web-GUI2.0\FPMWeb\x64\Debug\WebguiVW.exe'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\ntdll.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\kernel32.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\KernelBase.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\ws2_32.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\sechost.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\rpcrt4.dll'. Symbols loaded.
The thread 0x18c4 has exited with code -1073741515 (0xc0000135).
The thread 0x4ac8 has exited with code -1073741515 (0xc0000135).
The thread 0x858 has exited with code -1073741515 (0xc0000135).
The program '[15292] WebguiVW.exe' has exited with code -1073741515 (0xc0000135) 'A dependent dll was not found'.

How do I figure out which dll is missing with just that error log?


Replies (13)

RE: Missing DLLs in MSVS - Added by Roel Standaert over 5 years ago

You can try to figure it out with tools like dumpbin.exe, but I like to use Dependencies: https://lucasg.github.io/Dependencies/

RE: Missing DLLs in MSVS - Added by Roel Standaert over 5 years ago

In Visual Studio, when using our Wt installer, adding Path=C:\Program Files\Wt 4.1.0 msvs2019 x64\bin (or something similar) to Debugging -> Environment normally does the trick.

If you're trying to run it from Visual Studio, can you take a screenshot of the Debugging property page, maybe?

RE: Missing DLLs in MSVS - Added by Sebastian Fett over 5 years ago

According to Dependencies (assuming a ? means missing) I am missing wtd.dell wthttpd.dll wtdbod.dll wtdbomysqld.dll which I am not certain why they are needed since we are already statically linking those. But as I said, my "Debugging-> Environment" says

 PATH=C:\WTINSTALLATION\bin 

which contains exactly the desired DLLs. And in addition I am missing VCRUNTIME140D.dll and ucrtbased.dll which both should be windows related DLL's

RE: Missing DLLs in MSVS - Added by Roel Standaert over 5 years ago

Can you take a screenshot of what Dependencies is showing? If it's missing Wt's DLLs then evidently Wt is not statically linked?

You can add a search folder in Dependencies with Options -> Customize search folder, and then add C:\WTINSTALLATION\bin, so you get the same result as you get in Visual Studio.

VCRUNTIME140D.dll is the debug runtime, that should definitely be on your system if you installed Visual Studio and checked "Desktop development with C" during installation.

RE: Missing DLLs in MSVS - Added by Sebastian Fett over 5 years ago

After checking and rechecking the load from symbol server option the output in VS changed to

 'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\ws2_32.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\sechost.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\rpcrt4.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Program Files\Wt 4.1.0 msvs2017 x64\bin\wtdbomysqld.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\shlwapi.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\msvcrt.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Program Files\Wt 4.1.0 msvs2017 x64\bin\wtdbod.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\combase.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Program Files\Wt 4.1.0 msvs2017 x64\bin\wthttpd.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Program Files\Wt 4.1.0 msvs2017 x64\bin\wtd.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\ucrtbase.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\bcryptprimitives.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\msvcp140d.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\gdi32.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\crypt32.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\msasn1.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\gdi32full.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\shell32.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\user32.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\win32u.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\vcruntime140d.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\cfgmgr32.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Unloaded 'C:\Windows\System32\vcruntime140d.dll'
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\advapi32.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\ucrtbased.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Unloaded 'C:\Windows\System32\ucrtbased.dll'
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\windows.storage.dll'. Symbols loaded.
'WebguiVW.exe' (Win32): Loaded 'C:\Windows\System32\powrprof.dll'. Symbols loaded.
The thread 0x353c has exited with code -1073741701 (0xc000007b).
The thread 0x1f84 has exited with code -1073741701 (0xc000007b).
The thread 0x4f6c has exited with code -1073741701 (0xc000007b).
The program '[19848] WebguiVW.exe' has exited with code -1073741701 (0xc000007b). 

which now properly loads the WT dll's but is still missing the 'WebguiVW.exe' (Win32): Unloaded 'C:\Windows\System32\vcruntime140d.dll' 'WebguiVW.exe' (Win32): Unloaded 'C:\Windows\System32\ucrtbased.dll'

vsconfig (31.8 KB) vsconfig

RE: Missing DLLs in MSVS - Added by Sebastian Fett over 5 years ago

I checked system32 and vcruntime140d.dll is definitely there. The debug executable still has question marks for the wt dll's but inside VS apparently he can load them. This is so confusing.....

RE: Missing DLLs in MSVS - Added by Sebastian Fett over 5 years ago

Roel Standaert wrote:

Can you take a screenshot of what Dependencies is showing? If it's missing Wt's DLLs then evidently Wt is not statically linked?

You can add a search folder in Dependencies with Options -> Customize search folder, and then add C:\WTINSTALLATION\bin, so you get the same result as you get in Visual Studio.

VCRUNTIME140D.dll is the debug runtime, that should definitely be on your system if you installed Visual Studio and checked "Desktop development with C" during installation.

Dependencies 1.8 from GITHub has only Properties in Options, no customize search folder

RE: Missing DLLs in MSVS - Added by Roel Standaert over 5 years ago

I thought mine was maybe older, but actually it's newer. I'm using 1.9, you can get it on the releases page on GitHub, looks like the site isn't fully up to date: https://github.com/lucasg/Dependencies/releases

RE: Missing DLLs in MSVS - Added by Sebastian Fett over 5 years ago

Its only VCRUNTIME140D.DLL and ucrtbased.dll missing after adding the path even though both of those are in System32 just like all other system32 Dlls he is finding. Any idea what could cause this? I cannot add any files in the C drive else I would try redownloading them and adding them there.

RE: Missing DLLs in MSVS - Added by Wim Dumon over 5 years ago

Hi Sebastian,

The vc runtime DLL's ending in 'd' are debug dlls, and are somewhat special since they are not present in the msvs redistributable packages. They are normally installed on your system when you install visual studio, and I've never really had problems with those dll's not being found. Did you compile the .exe on the same computer as you're trying to run it? Maybe something in the manifest invalidates the use of the dlls that is on your computer? I assume you already tried to recompile your program from scratch? Are the same dll's found in other places in the dependency tree?

BR,

Wim.

RE: Missing DLLs in MSVS - Added by Sebastian Fett over 5 years ago

Yes its during the building in VS2017. Manually checking the exe for dependencies leaves me with "?" on just those 2. They exist inside Windows/System32 and they are found and loaded as seen in the VS log above but for some strange reason they are unloaded again. I dont have the possibility to start on a clean system as I have to compile and run it on the departments only windows VM. Could it be somehow related to having installed the WT binaries via your executable and somehow given wrong paths there? I used the vs2017 x64 as thats the system I use to compile my code. The vcruntime140 is the vs2015 one according to google though.

No the DLL's are never found if I look it up in Dependencies. I sat down together with our institutes local IT but since they dont use Windows or Visual Studio they werent much of a help either.

All I am trying to do is simply get my code which works fine on our linux systems to work in windows - if you have a better or easier suggestion than VS I woudlnt mind switching the IDE.

RE: Missing DLLs in MSVS - Added by Wim Dumon over 5 years ago

Hi Sebastian,

You can kind of side-step the issue by making release builds instead of debug builds... does that work? If it's your intention to redistribute the result, you'll need a release build in any case...

What's the exact version of VS you are using?

BR,

Wim

RE: Missing DLLs in MSVS - Added by Sebastian Fett over 5 years ago

Couldn't get to run it with release either. Version is: 15.8.4.

Sat down with our institutes IT trying to get it to run but we gave up in the end and will probably run it in a VM where there are no issues with DLL's.

Thanks for your time though

    (1-13/13)