"MSVCR80.dll not found" : Release only
I have a project that extracts data from a access database on my local drive. Originally the program used DAO but was recently converted to be using ADO for the extraction.
The program worked in release and debug before when it was on DAO. The program runs fine in debug after the switch over but recently was tried to run in release and the MSVCR80.dll not found error pops up.
I receive the following "Linker Tools Warning LNK4098 defaultlib 'library' conflicts with use of other libs; use /NODEFAULTLIB:library"
I believe this warning stems from me using the ADO dll below.
#import "c:\Program Files\Common Files\System\ADO\msado15.dll" \
rename("EOF", "EndOfFile")
Since the program works in debug I think the problem is that I am not using the correct ADO dll for running in release, however I am not sure if that is the problem. If it is the issue, I'm unsure of how to find the proper .dll
This is not a widespead issue, as I am able to compile and run other projects in release mode. I am running Visual Studio 2005 on Windows XP. If any other information is needed please let me know, Thank you for any assistance!
Re: "MSVCR80.dll not found" : Release only
I would suggest to run depends.exe on your release executable and see if it can find issues.
Re: "MSVCR80.dll not found" : Release only
Thank you for the tip. I ran this dependency walker on my release .exe and it did find two issues.
It can't find MSVCR80.dll or this mysterious one I have never heard of DWMAPI.dll. I did a search on my system and MSVCR80.dll is on my system in multiple folders, but this DWMAPI.dll is not on my system, so that is obviously a problem. A quick google search for this DWMAPI.dll seems to indicate that this .dll is a Vista specific .dll. I am perplexed why my project would be dependent on such a .dll
Also as an experiment, I copied MSVCR80.dll into my project folder and ran it. When I do this i get a different error, maybe this is link with the DWMAPI.dll. The box just says Runtime Error! Lists the file path to my .exe and then says, "R6034"
I forgot to mention is earlier and I'm not sure if this is relevant but my project is using COM. I'm still a bit lost so any further advice would be appreciated.
Re: "MSVCR80.dll not found" : Release only
During my investigation I've come across that something could be wrong with my manifest file. Posted Below is a copy of my "MyProgram.exe.embed.manifest", It seems odd that this mentions debug, could my manifest file be wrong? I have never messed with these before.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.VC80.DebugCRT" version="8.0.50727.762" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
</dependentAssembly>
</dependency>
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.VC80.DebugMFC" version="8.0.50727.762" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
</dependentAssembly>
</dependency>
</assembly>