hello i working following system.
windows 7 ultimate sp1 x64.
visual studio 9 c++ sp1.
directx sdk 9 (i dont know specified version of mine. but it’s version is higher than june 2010).
boost x86 1.47
and my visual studio is not english version, so i cant write the menu or message’s name excaetly . but it’s meaning is almost same.
my project is 3D game.
i making the installer of my project using visual studio’s ‘installer project’
and include every included project’s dependency DLLs(using visual studio’s function)
everything is fine. the install and run test is success. and every dll is installed ok. (ex d3d9.dll)
when i tested it on a pure windows xp sp3, install (setup.exe) is success. but when i run this program, it outs error and don’t executed.
the error dialog is that:
The procedure entry point_except_handler4_common could not be located in the dynamic link library msvcrt.dll.
(my windows xp is not english, but it almost right)
i tried next:
Installer Project –> “Properties” –> “Prerequisites..” –> “Choose which prerequisites to install:” –> add check to –>”Visual C++ 2010 Runtime Libraries (x86) & .Net Framework 3.5 sp1 –> “Specify the install location for prerequisites” –> “Download prerequisites from the component vendor’s web site”
and the output is
installerproject.msi
vcredist_x86.exe
setup.exe
i try reinstall vcredist_x86 and reboot. the client computer(pure windows xp3) is has same problem. and the Google says “the msvcrt.dll is caused many problems.” but no article solve my problem in my found list. -and they says ‘no general solution 🙁
who knows solutions of this problem? and why this problem occur?
help me please. and i’m sorry my shortest English. that is my best english skill
You may want to load your program into Dependency Walker on the XP machine to see what binary is trying to link to msvcrt!_except_handler4_common.
msvcrt.dllis a system DLL and is not part of the Visual C++ 2008 (or 2010 – it’s not clear which you’re using) runtime libraries. VC++ 2008’s runtime DLL is namedmsvcr90.dll, so I’d guess that there’s some indirect dependency on msvcrt.dll. You’ll need to figure out what binary is trying to use that export frommsvcrt.dlland determine if it’s even compatible with WinXP or how it can be made compatible.Note that since
msvcrt.dllis a system DLL, it’s under Windows’ system file protection feature so it generally cannot be updated/modified except by service packs and system updates.Just for comparison:
msvcrt.dllversion 7.0.2600.5512 – it does not have the_except_handler4_commonentry point.msvcrt.dllversion 7.0.7600.16385, and it does have that entry point.