2017-11-15 4 views
0

マップされたドライブのリストをWindowsサービスとして自分のマシンに取得しようとしています。コードを通常のプログラムとして実行しても、Windowsサービスとして実行しないと、適切なリストが得られます。私はこのトピックに関するいくつかの記事を見てきましたが、明確な解決策はありません。マップされたドライブのリストをWindowsサービスとして取得します。

サービスを作成したのと同じアカウントでサービスを実行しています。サービスには管理者権限があります。

これを正しく行う方法を知っている人はいますか?

+0

これは、私がサービスを作成したのと同じアカウントでサービスを実行していることを明確にしてください。サービスには管理者権限がありますか?これは通常のWindowsユーザーとしてサービスを実行していることを意味しますか? –

+0

はい。マップされたドライブはユーザーに固有のものなので、作成したユーザーにのみ表示されます。言い換えれば、マップされたドライブを見ることができるアカウントを使用しています(私は1つしか接続していません)。 – Roka545

+0

問題を明確にするために、サービスが実行されているアカウントに、報告されていないドライブが割り当てられているとしていますか? –

答えて

1

Windows 7でUACを有効にしている場合、管理セッションにはマッピングされたドライブと正規のユーザーセッションが異なります。管理コマンドプロンプトを開き、net showを実行して、マップされたドライブの状態を確認します。

アップデート:Windows 10ワークステーションにEnabledLinkedConnectionsが設定されているので、この問題は表示されません。

+0

hmm ...私はWindows 10になっています – Roka545

+1

私のWindows 10には特別なレジストリエントリがあり、問題はありません。私は自分の答えを更新しました。 – NetMage

2

サービスがユーザーアカウントで実行するように設定されている場合はhttps://msdn.microsoft.com/en-us/library/windows/desktop/ms685143%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396

は、システムは常にユーザーの新しいログオンセッションを作成し、次のMSDNの記事を参照してくださいことはできませんその新しいログオンセッションでサービスを開始します。したがって、サービスは、ユーザーの他のセッションで確立されたドライブマッピングを管理できません。

関連する問題