remote sc OpenSCManager query failed 5 access deni

2019-03-25 09:48发布

问题:

I'm writing a script that periodically checks that certain services are running on remote workstations. I'm having a devil of a time getting an "SC \workst1 query" command working from one test machine to another. Both machines are running XP pro SP3. Neither is part of a domain. Both are in the same workgroup, and the administrator accounts have the same passwords.

I keep getting the "[SC] OpenSCManager FAILED 5: Access is denied" message, from either workstation to the other. I have tried using elevated privileges on both. Windows firewall software is turned off. There are no messages are showing up in the Event security logs. When (as administrator) I try going to "Computer Management" -> "connect to another computer" and access the remote services I get "Error 5 Access is denied".

I can set up a filesystem share between the two machines successfully, and "net use \workst1\IPC$ /user:Administrator" completes successfully, but the SC query still fails. I'm using IP addresses and not hostnames in these commands, but that doesn't help. I don't know what else to try. Thanks for the help.

回答1:

Try to run the commans as a Administrator

start-> (type cmd in search box), right click on cmd, Run as a administrator -> execute your command



回答2:

You must have administrative rights on the remote machine. Moreover you must access the drive before calling "sc". This can be achieved in command line using

net use \\remotemachine\admin$ <password> /user:<username>

admin$ is a hidden shared drive accessible to administrators that "sc" uses to control services.



回答3:

I was having the same issue today trying to check if a service is enabled remotely. I could solve the issue modifying the User Account Control for remote restrictions in windows:

To disable UAC remote restrictions, follow these steps:

  1. Click Start, click Run, type regedit, and then press ENTER.
  2. Locate and then click the following registry subkey: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
  3. If the LocalAccountTokenFilterPolicy registry entry does not exist, follow these steps:
    On the Edit menu, point to New, and then click DWORD Value. Type LocalAccountTokenFilterPolicy, and then press ENTER. Right-click LocalAccountTokenFilterPolicy, and then click Modify. In the Value data box, type 1, and then click OK.
  4. Exit Registry Editor.

More information about this solution in this site.



回答4:

Your user should be remote, from Manage and Local users and groups



回答5:

The UAC issue is obvious you have to pull down the lever for UAC setting Also while installing the services you can use the following command

SC create SERVICENAME DisplayName= "DISPLAYNAME" binPath= "PATH OF EXE" start= disabled type= share