Dependencies for services no longer displaying

  • Thread starter Thread starter Rich H
  • Start date Start date
R

Rich H

Windows XP, SP3, all updates current.

When I open the Services tool (%SystemRoot%\system32\services.msc /s) and
open the properties dialog for any of the services, then click the
Dependencies tab, both the lists always show <No Dependencies>.

Yet, if I open a Command Prompt and enter (for example):

sc enumdepend rpcss

It shows 4 dependencies.

Any idea what is wrong, and how I can repair it?
 
I don't think that it's a case of "repairing" it...

I believe (I may be wrong about this, however) that the way in which sc.exe
enumerates dependencies differs from the way "Services.msc" lists dependencies.

The only evidence I have for this is that when I type at the command prompt :

sc.exe enumdepend rpcss

....I also get 4 dependencies listed, but when I look under the dependencies tab of
Services.msc, it lists no fewer than 49!

Also, the [enumdepend] parameter seems to only display what would otherwise be in the
"lower box" (The following system components depend on this service) rather than the
upper one that displays the services essential for starting the service in question.

Unless ALL the dependencies boxes in Services.msc are "empty" I rather think it could
just be a discrepancy in the way each application goes about retrieving it's
information.

==

Cheers, Tim Meddick, Peckham, London. :-)
 
Thanks for the reply, Tim.

Unfortunately, it seems that both of the dependency boxes (top and bottom)
for ALL of services listed in Services.msc are empty. I'll confess that I
haven't checked each and every one, but I went through about 1/3 of them in
order, and checked a bunch of them at random, and they are all empty.

Tim Meddick said:
I don't think that it's a case of "repairing" it...

I believe (I may be wrong about this, however) that the way in which sc.exe
enumerates dependencies differs from the way "Services.msc" lists dependencies.

The only evidence I have for this is that when I type at the command prompt :

sc.exe enumdepend rpcss

....I also get 4 dependencies listed, but when I look under the dependencies tab of
Services.msc, it lists no fewer than 49!

Also, the [enumdepend] parameter seems to only display what would otherwise be in the
"lower box" (The following system components depend on this service) rather than the
upper one that displays the services essential for starting the service in question.

Unless ALL the dependencies boxes in Services.msc are "empty" I rather think it could
just be a discrepancy in the way each application goes about retrieving it's
information.

==

Cheers, Tim Meddick, Peckham, London. :-)




Rich H said:
Windows XP, SP3, all updates current.

When I open the Services tool (%SystemRoot%\system32\services.msc /s) and
open the properties dialog for any of the services, then click the
Dependencies tab, both the lists always show <No Dependencies>.

Yet, if I open a Command Prompt and enter (for example):

sc enumdepend rpcss

It shows 4 dependencies.

Any idea what is wrong, and how I can repair it?

.
 
Does the effect of every "dependency box" being empty persist after rebooting? -
I'm just thinking, perhaps, it was a "one off"!!?

==

Cheers, Tim Meddick, Peckham, London. :-)
 
I've done a bit of "digging" and come up with the fact that it's a problem that has
been documented before - there is also a link between the Dependencies tab always
showing <No Dependencies> and Windows Server 2003 64-bit.

Plus, if you look in the registry - the dependencies that *should* be shown under the
Dependencies tab appear under the appropriate service's key in a value named
"DependOnService"

e.g. For the service "Logical Disk Manager Administrative Service" [dmadmin] under
the key :

[HKLM\System\CurrentControlSet\Services\dmadmin]

....you will find this value :

"DependOnService"="RpcSs \ PlugPlay \ DmServer" (REG_MULTI_SZ)

....which translates as :

RpcSs = "Remote Procedure Call (RPC)"
PlugPlay = "Plug and Play"
DmServer = "Logical Disk Manager"

....which are the three services that should appear in the dependencies box...

==

Cheers, Tim Meddick, Peckham, London. :-)
 
Just another thought;

....if you really *needed* to know what should be displayed in the Dependencies "box",
you could create a simple batch file that read the contents of the DependOnService
registry value for a given service (key).

e.g. ;

@echo off
if %1]==] goto USAGE
if %1]==/?] goto USAGE
reg QUERY HKLM\System\CurrentControlSet\Services\%1 >nul
if ERRORLEVEL 1 goto NO_KEY
reg QUERY HKLM\System\CurrentControlSet\Services\%1 /v DependOnService
if ERRORLEVEL 1 goto WARN
goto :EOF

:USAGE
echo.
echo SHOWDEP [service]
echo.
echo service - Specify a (short-name) service.
echo.
goto :EOF

:WARN
echo.
echo NOT ALL SERVICES THAT SHOW DEPENDENCIES USE THE VALUE:
echo.
echo [DependOnService]
echo.
echo Error: Value does not exist.
echo.
goto :EOF

:NO_KEY
echo.
echo Error: NO SUCH SERVICE (KEY) EXISTS
echo.



==

Cheers, Tim Meddick, Peckham, London. :-)
 
Thanks to this website:
http://jeffwouters.nl/index.php/2011/04/wmi-error-when-viewing-dependencies-of-services/

The answer is in the script he posted:
<script>
Code:
@echo on
cd /d c:\temp
if not exist %windir%\system32\wbem goto TryInstall
cd /d %windir%\system32\wbem
net stop winmgmt
winmgmt /kill
if exist Rep_bak rd Rep_bak /s /q
rename Repository Rep_bak
for %%i in (*.dll) do regsvr32 -s %%i
for %%i in (*.mof,*.mfl) do Mofcomp %%1
net start winmgmt
goto end

:FixSrv
if /I (%1) == (wbemcntl.exe) goto End
if /I (%1) == (mofcomp.exe) goto End
%1 /RegServer

:TryInstall
if not exist wmicore.exe goto End
wmicore /s
net start winmgmt
:End
</script>

This script basically re-registers all *.dll, *.mof and *.mfl files related to the service

However you need to change one line.

Change this line:
for %%i in (*.mof,*.mfl) do Mofcomp %%1
to:
for %%i in (*.mof,*.mfl) do Mofcomp %%i
^ You are changing the number 1 to a letter i.
 
over 2 years later:

<snipped the script>

Did you not notice the datestamp of the article to which you replied? I
doubt Rich was still waiting for a solution after over 2.6 years.


But perhaps someone else was having a similar issue and came to your forum and found this. But I get it, you'd rather leave the questions unanswered than have someone post an answer for anyone who might have landed here after searching due to the same issue..... There is an easy solution - delete the boards after 30 days if you don't want people searching old posts for answers to the same problem!
 
Back
Top