WINSRV.DLL missing on certain workstations.

I've been working with a support team for a week now, and a perculiar problem arose this morning, for 6 different users. When they booted up, they had a blue screen, stating "winsrv.dll" is missing. I checked this via recovery console, and it wasn't missing at all.

These users all have somthing in common:
Windows 2000 Professional
Service Pack 2
IBM Laptops

We have since solved this issue via restore, but I am searching high and low for the cause of it. I am suspecting an auto-update that was applied to the network recently, but I cannot be certain.

If anyone has had the same problem, or know the cause of this enigma, could you please post a description and your hypothesis?

Many thanks in advance.

David Price
m0rtAsked:
Who is Participating?
 
dban00bConnect With a Mentor Commented:
Your assumption about the auto-update is probably correct.  winsrv.dll is one of those files that sometimes chokes on an update.  Usually I've seen winsrv.dll cause problems with hardware no longer working after an update (such as a second processor or even and EIDE controller!!) But I have not seen it create a BSOD.  

Unfortunately it's hard to reproduce, since you could run the same update, and it may not get corrupted.  Also the error "winsrv.dll is missing" is misleading.  The error is actually winsrv.dll being misconfigured, therefore unable to be properly recognized by the OS.  You can see it's settings in "C:\WINNT\repair\setup.log"  Look for the line with winsrv.dll in it.

In reality though, it's more work trying to chase down the cause than to just fix the result.  It's not the best way to go about things, but with errors like this that are so imbedded into Windows, there's not much else you can do.

By the way W2K SP2, was the last time I personally saw this praticular file get corrupted.  W2K SP3, W2K SP4, WinXp, and WinXP SP1, have not yet shown this problem. (to me anyway)
0
 
shivsaConnect With a Mentor Commented:
Yes u are right this is surely a problem with update.

This problem happens when u have not uptodate %SystemRoot%\Repair\Setup.log file. if u done some update in past which involve winsrv.dl file and did not update this file properely and then after that u did this windows update, which did not go properly since it has repair.log file.
-------

modify the %SystemRoot%\Repair\Setup.log file and then reapplying update will solve the problem.

This is the example for WinNT, but this may work for Windows 2000 too.
-----------------
1) attrib -r -h %SystemRoot%\Repair\Setup.log
2) Make a backup copy of the %SystemRoot%\Repair\Setup.log.

NOTE: check this file on system where u did not have problem and system who did not do this last update. get the following correct string. and compare that with this string on these 6 system.

3) Edit Setup.log, search for  line, correct this line: this line should look like this one here(which u got from other system).

    \System32\Winsrv.dll ="WINSRV.DLL","<some number>"

4) Save the modified Setup.log to the %SystemRoot%\Repair directory and attrib +r +h %SystemRoot%\Repair\Setup.log

5) Re-apply the update.

0
 
m0rtAuthor Commented:
Many thanks to you both for your swift answers.

You are right about the solution being quicker than eliminating the cause... I just hope that the other 350 users dont decide to have the same problem. Unfortunately, this problem HAS to be explained, and the cause identified... it's the drawback of working for a large company.

I've looked for some sort of pattern and 9 of the 10 computers effected, are Tseries IBM laptops (the other being an IBM NetVista workstation)... I'm hoping that microsoft will identify a problem with one of their updates, and IBM laptops running win2k sp2... but then again, i hope I win the lottery too.

Thanks again guys.

0
Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

 
Zmonk75Commented:
We've been having the same problem at my company of 800+ workstations.

It's crashed a ton of PC's.. Luckily we've been able to repair them successfully.  Basically what we've managed to do is cut down the auto daily SP4 updates from 25 a day to 10 - which to date seems to have resolved the problem without a single PC BSOD'n with the WINSRV.DLL error.  We are also at a loss of what the heck is causing the problem!  We've figured the end user was the root cause but at this point is doubtful.  It's a serious problem since some of the PC's needed to be totally re-imaged and data restored.
0
 
wrh25Commented:
Ok Here's my problem, all of our machines are current with sp4 except for this machine that is giving the same error.  It wil not boot at all I am able to access the setup.log file and edit it but I don't have a pre sp2 machine to look up the correct entry.
0
 
mkarolowCommented:
To fix this, mount the hard drive from the failing system as a slave drive in a working system. Then browse to the slave drive using Windows Explorer and navigate into the C:\WINNT$NtServicePackUninstall$\spuninst folder. Right-click spuninst.bat and select Edit. Click Edit / Replace and change all instances of C: to the drive letter of the slave drive. (In the screen shown below it is F: but yours may be some other letter.) Then click Replace All.

After the replace function is complete, close the replace dialog and close and save the batch file. Then launch the batch file to uninstall SP4 on the slave drive. When complete, shutdown and return the drive to its original system and you should be able to boot normally. Reapply SP4 on the machine.
0
 
DDureuxCommented:
winsrv.dll
0
All Courses

From novice to tech pro — start learning today.