2

我正在尝试编写一个 wpf 应用程序,它允许我浏览网络(AD 或工作组)上的服务器/计算机列表。

过去,我使用以下代码打开资源管理器类型窗口以进行文件夹或目录浏览

System.Diagnostics.Process.Start("Explorer.exe");

但在这种情况下,我不需要用户选择文件夹或文件,只需查看网络上机器的名称。

任何人都可以建议任何支持此类功能的 .net 类或命名空间吗?我对 WMI 做了一些粗略的阅读,看起来 System.Management 命名空间可能是要采取的路线。谁能给我一些建议,以缩小我可能想从这个命名空间查看哪些方法?

-干杯

4

1 回答 1

0

C#:你可以使用 Gong Solutions Shell Library

使用 System.Collections;使用 System.Collections.Generic;使用 GongSolutions.Shell;使用 GongSolutions.Shell.Interop;

public sealed class ShellNetworkComputers : IEnumerable<string>
{
    public IEnumerator<string> GetEnumerator()
    {
        ShellItem folder = new ShellItem((Environment.SpecialFolder)CSIDL.NETWORK);
        IEnumerator<ShellItem> e = folder.GetEnumerator(SHCONTF.FOLDERS);

        while (e.MoveNext())
        {
            Debug.Print(e.Current.ParsingName);
            yield return e.Current.ParsingName;
        }
    }

    IEnumerator IEnumerable.GetEnumerator()
    {
        return GetEnumerator();
    }
}
于 2012-10-27T22:00:40.693 回答