Problem with msvcrt.dll error

I can satisfactorily log into Sage Line 50 but before the next screen appears I get a message that Sage Accounts.exe has experienced a problem and must close. There is an option to show details and this shows the message on the attached doc. There seems to be a lot of reference to msvcrt.dll problems on the internet. Is it likely that this file has been corrupted? I understand that this is a shared dll but on doing a search of all my drives I find that there are numerous copies of it spread across the drives.
Any help would be appreciated.
Sage-Error.doc
ChrisJKayAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

*** Hopeleonie ***IT ManagerCommented:
this link may help you more:

http://support.microsoft.com/kb/324762/en-us
0
peetmCommented:
Indeed - there are very many versions:

http://support.microsoft.com/dllhelp/?dlltype=file&l=55&alpha=msvcrt.dll&S=1&x=0&y=0

And, it's usually the case that each version fixes something from the previous of course.

Has this just started happening?  Have you asked Sage's support about it?
0
ChrisJKayAuthor Commented:
Thanks for prompt reply. I had already seen this kb article and had reloaded msvcrt.dll from the CD. I have just run depends.exe and can comfirm that the msvcrt.dll in C:\Windows\System32 does contain the _resetstkoflw function.

However if I try to register this version of the dll using "regsvr32 C:\WINDOWS\system32\msvcrt.dll", I get an error message
    regsvr32 C:\WINDOWS\system32\msvcrt.dll was loaded but the DllRegister Server entry point was not    found. The file cannot be registered.

Does this mean that one of the other copies of msvcrt.dll elsewhere on the computer is still being used?
0
10 Tips to Protect Your Business from Ransomware

Did you know that ransomware is the most widespread, destructive malware in the world today? It accounts for 39% of all security breaches, with ransomware gangsters projected to make $11.5B in profits from online extortion by 2019.

ChrisJKayAuthor Commented:
peetm:
I have used the program for years without any problem. However it is about two months since I last used it, when all was OK. This is because I have now retired but need to check on my final accounts for a tax return.
I was a Sage dealer but closed my account on retirement and therefore have not contacted them but will give it a try now.
0
ChrisJKayAuthor Commented:
No luck with Sage can't help for two reasons - Account closed (Great after 15 years with them!) and version ( no longer supported.) So back to the experts.
0
peetmCommented:
regsvr32 is used to register COM components - msvcrt.dll is just a plain old DLL.
0
peetmCommented:
>>I have used the program for years without any problem. However it is about two months since I last used it, when all was OK. This is because I have now retired but need to check on my final accounts for a tax return.

As you say, it's possible that a previous/later version is being used that is not compatible.

I think you'll need something like ProcessSpy/Process Explorer to track down which version of the dll you're loading - most likely the one in system32.  However, that might help, um, not at all; as you'll probably not be able to change that - nor should you - as it'll be protected/loacked.

Depending upon your version of Windows, you could try copying the various other versions into the same folder as your main executable (match the created date of your main executable as near as you can to the created dates of the various msvcrt.dll versions you have).  This *may* allow the local version to be loaded.  If it still fails, you'd use Process Explorer etc to see if the local version *is* being loaded, or to determine that the system32 version is still being favoured.

There are various schemes for forcing the loading of a local dll - http://blogs.msdn.com/junfeng/archive/2006/01/24/517221.aspx

0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
ChrisJKayAuthor Commented:
peetm:

Great the use of dll redirection has solved it. Once I put msvcrt.dll and kernel32.dll in the application folder and added a file sage.exe.local the package worked OK.

Many thanks
Chris
0
peetmCommented:
Great - thanks for letting me know.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Software

From novice to tech pro — start learning today.