I am about to deploy a small application on Windows 10
. I successfully build and run the application and created the executable file thanks to this post.
The problem I have is that all of a sudden there is a missing .dll
. And to be specific the error message after clicking on the .exe
to make sure the application was working to my surprise was the one below:
VCRUNTIME140D_APP.dll was not found
In my debug folder I have the .exe
created and had no idea why was asking for that library.
here is my .pro
file:
QT += quick quickcontrols2 concurrent network core gui
CONFIG += c++11
# The following define makes your compiler emit warnings if you use
# any Qt feature that has been marked deprecated (the exact warnings
# depend on your compiler). Refer to the documentation for the
# deprecated API to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS
TARGET = SMTPEmail
TEMPLATE = app
DEFINES += SMTP_BUILD
#win32:CONFIG += dll
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
SOURCES += \
main.cpp \
progressbardialog.cpp \
robot.cpp \
robotmanager.cpp \
settings/emailaddress.cpp \
settings/mimeattachment.cpp \
settings/mimecontentformatter.cpp \
settings/mimefile.cpp \
settings/mimehtml.cpp \
settings/mimeinlinefile.cpp \
settings/mimemessage.cpp \
settings/mimemultipart.cpp \
settings/mimepart.cpp \
settings/mimetext.cpp \
settings/quotedprintable.cpp \
settings/smtpclient.cpp \
user.cpp \
usermanager.cpp
RESOURCES += qml.qrc
# Additional import path used to resolve QML modules in Qt Creator's code model
QML_IMPORT_PATH =
# Additional import path used to resolve QML modules just for Qt Quick Designer
QML_DESIGNER_IMPORT_PATH =
# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target
HEADERS += \
progressbardialog.h \
robot.h \
robotmanager.h \
settings/SmtpMime \
settings/emailaddress.h \
settings/mimeattachment.h \
settings/mimecontentformatter.h \
settings/mimefile.h \
settings/mimehtml.h \
settings/mimeinlinefile.h \
settings/mimemessage.h \
settings/mimemultipart.h \
settings/mimepart.h \
settings/mimetext.h \
settings/quotedprintable.h \
settings/smtpclient.h \
settings/smtpexports.h \
user.h \
usermanager.h
What have I done so far
1) In order to solve this last problem I researched and came across this useful post which also explained the main difference. Although the thing to be noted is that this application will run on Desktop only.
2) I found this version to download vcruntime140_app.dll from which I downloaded the missing library. Unzipped and added to my debug folder as also possible to see from below print screen:
After that I built and run the application but surprisingly I was getting the same exact error despite missing .dll
was manually added to the debug folder.
3) I did more research and came across this, this post and also this one. But all of them together didn't help me figure out how to understand what the problem was.
4) I tried to install this version too vcruntime140d.dll from the same site at point 2) above, but still the same result. Missing library VCRUNTIME140D_APP.dll was not found
Last thing I have to notice is that: I downloaded and tried vcruntime140_app.dll then vcruntime140d.dll but I am not able to find a vcruntime140d_app.dll if it exists.
I don't understand why, despite the library is there as is possible to see also here C:\Users\me\OneDrive\Desktop\build-signalsQML-Desktop_Qt_5_12_0_MSVC2017_64bit-Debug\vcruntime140_app.dll
the double click on the executable still give the same error.
Thanks for pointing in the right direction for solving this problem.