特定のサービスがリモートワークステーションで実行されていることを定期的にチェックするスクリプトを書いています。あるテストマシンから別のテストマシンで "SC\workst1 query"コマンドが機能するという悪魔がいます。両方のマシンが実行中XP pro SP3。どちらもドメインの一部ではない。どちらも同じワークグループにあり、管理者アカウントは同じパスワードを持っている。
どちらのワークステーションからも、「[SC] OpenSCManager FAILED 5:Access is denied」というメッセージが表示され続けます。両方で昇格された権限を使用してみました。 Windowsファイアウォールソフトウェアがオフになっています。イベントセキュリティログにメッセージが表示されていません。 (管理者として)「コンピュータの管理」→「別のコンピュータに接続」に移動してリモートサービスにアクセスしようとすると、「エラー5アクセスが拒否されました」と表示されます。
2つのマシン間でファイルシステム共有を正常に設定でき、「Net Use\workst1\IPC $/user:Administrator」は正常に完了しますが、SCクエリはまだ失敗します。これらのコマンドでは、ホスト名ではなくIPアドレスですが、それは役に立ちません。他に何を試したらよいかわかりません。助けてくれてありがとう.
管理者としてコマンドを実行してみてください
start->(検索ボックスにcmdと入力)、cmdを右クリック、管理者として実行->コマンドを実行
リモートマシンの管理者権限が必要です。さらに、「sc」を呼び出す前にドライブにアクセスする必要があります。これは、コマンドラインで次のように実行できます。
Net Use \\remotemachine\admin$ <password> /user:<username>
admin $は、「sc」がサービスの制御に使用する管理者がアクセスできる非表示の共有ドライブです。
今日、サービスがリモートで有効になっているかどうかを確認しようとして同じ問題が発生していました。 Windowsのリモート制限のユーザーアカウント制御を変更する問題を解決できます。
UACリモート制限を無効にするには、次の手順に従います。
regedit
と入力し、Enterキーを押します。HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System
LocalAccountTokenFilterPolicy
レジストリエントリが存在しない場合は、次の手順に従います。Edit
メニューでNew
をポイントし、DWORD Value
をクリックします。 LocalAccountTokenFilterPolicy
と入力し、Enterキーを押します。 LocalAccountTokenFilterPolicy
を右クリックし、[Modify
]をクリックします。 Value
データボックスに1
と入力し、[OK]をクリックします。this site にあるこのソリューションの詳細。
ユーザーは、管理およびローカルのユーザーとグループからリモートである必要があります
UACの問題は明らかです。UAC設定のレバーを下げる必要があります。また、サービスのインストール中に次のコマンドを使用できます。
SC create SERVICENAME DisplayName = "DISPLAYNAME" binPath = "PATH of EXE" start = disabled type = share