I have been experiencing problems with an application that uses MS office (especially Access) for underlying database work on my XP Pro machine since last spring. The developer says the problem relates to a bad MSVCRT.dll file needed to handle their program’s C++ code, and a simple re-registering / removing excess copies should take care of the problem running regsvr32.exe …. but that results in an error message “msvcrt.dll was loaded but the DLLRegisterServer entry point was not found. The file can not be registerted.”
After checking an old Fred Langa article in WS about another user’s problem (with a different *.dll file) he seems to make a generalized statement that to fix this problem e.g., Use a search tool to scour your system for any instances of dllfile.dll. Normally, you should have only one copy in the WindowsSystem32 folder. Delete or rename any other copies (for example, as dllfile32.old or .bak). Check each copy’s properties, such as version number and creation date, etc.
This is similar advice I was given my the application developer but when I do this I find multiple copies in different windows directories (besides system32, e.g., windowssystem32dllcache and also copies in the reinstalled cprogram filesjavajre6bin directory and also in the program files for the nero7 cd program.
What I first thought was the problem is that when checking the properties for msvcrt.dll file in the main system32 directory (c:windowssystem32) it is described as “Windows NT CRT DLL” (File version 7.0.2600.5512 ) vs. the version and description for the msvcrt.dll file in the recently re-installed java directory cprogram filesjavajre6bin directory is seemingly correctly called “Miscrosoft ® C Runtime Library” (version 6.0.8337.0) leading my amateur mind to think the dll file in the java directory is the correct one. This msvcrt.dll file also seems to be the same or similar to the v6.0.8797.0 found in the C+++ runtime components file discussed here : http://support.microsoft.com/kb/259403
But when I do rename the file e.g. msvcrt.old — a new copy is automatically created that is identical to the one renamed, and if I try copying the hopefully correct one from the java directory, it the file in the system32 directory automatically is changed back to the previous version. Could this be related to a file called msvcr40.dll file that has as its description “VC 4.x CRT DLL (Forwarded to msvcrt.dll)” and btw has the same date as the troubled msvcrt.dll file? Also in the system32 direcotry there is a file called msvcr20.dll dated 2001 that shows the same name as what it seems it should be, ie “MS C Runtime Library”
Sorry for the long post but since I am not really technically qualified to be digging around the windows/system32 directory, I don’t know how else to explain the problem and what I have tried … thanks in advance for any thoughts or ideas.
TGH
Ps – I also found this this article on “how to fix msvcrt.dll errors” ( http://www.instant-registry-fixes.org/how-to-fix-msvcrtdll-errors/ ) and wondering if this is a reputable site and accurate information? My main concern is that since I did a complete reinstall of my XP Pro system this summer and the problem msvcrt.dll problem persists, I would just wind up copying from the XP Pro install disk the same file I have now. Then again, when I did a complete reinstall a year ago due to a virus episode, everything worked fine (until last May).