1

C# Windows サービスを開発しています。

現在ログオンしているユーザーを (サービスから) 知る必要があります。

私はこのコードでここで答えをたどろうとしました:

ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT UserName FROM Win32_ComputerSystem");
ManagementObjectCollection collection = searcher.Get();
string username = (string)collection.Cast<ManagementBaseObject>().First()["UserName"];

しかし問題は、Windows 7 でしか機能しないことですが、Windows 8 では空の文字列が返されます。

WMI は Windows 8 で変更されましたか?

4

1 に答える 1

0

問題はWindows 8ではなく、リモート接続を使用したという事実です。この WMI は、リモート接続では機能しません。

于 2012-12-10T12:26:59.773 に答える