65.9K
CodeProject 正在变化。 阅读更多。
Home

浏览网络邻居的控件类

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.32/5 (11投票s)

2004年9月4日

CPOL

2分钟阅读

viewsIcon

76153

downloadIcon

1290

如果您想要一个易于使用的对话框来浏览网络,请看看这个。这个库允许选择网络共享、目录、文件等,并在需要时请求用户名和密码。

Sample Image - ScreenShot1.jpg

引言

NetworkSelect 是一个控件库,允许您浏览网络邻居。 可以选择下载的级别,从域到共享、目录和文件。 如果无法访问计算机,该控件将要求输入用户名和密码。

致谢

此控件基于Richard Deeming (CodeProject member ID:34187)Marc Merritt (member ID: 2851)的出色工作。 他们都提供了一些访问网络共享的方法,并且我已将(部分)他们的类包含在此项目中。 尽管他们的工作很好,但我仍然没有一些用户友好的方式来浏览网络邻居,这就是创建此控件的原因。

使用代码

控件代码分布在更多页面上,因此请允许我不要太深入地了解类本身的细节。

在其最简单的形式中,控件的使用非常简单。

  • 步骤 1 解压缩 NetworkSelect.zip 文件。
  • 步骤 2 在同一文件夹中创建一个新的 C# 项目。
  • 步骤 3 在开发过程中,您可能想将 images 文件夹复制到您的 bin\Debugbin\Release 文件夹中。 该应用程序期望此 images 文件夹存在于当前应用程序目录中。
  • 步骤 4 打开新项目时,将以下“现有文件”添加到您的项目
    • AskPassword.cs
    • CompEnum.cs
    • NetworkSelect.cs
    • Shares.cs

    然后执行“生成解决方案”以将控件添加到您的项目中。

  • 步骤 5Form1 中绘制 NetworkSelect 控件。 向窗体添加一个 Buttonbutton1
  • 步骤 6 在程序的头文件中添加以下 using 子句
    using TIData.NetworkSelect;
  • 步骤 6 将以下 button1_Click 方法添加到您的程序
    private void button1_Click(object sender, System.EventArgs e)
    {
      networkSelect1.SeekThroughDomains(
        NetworkSelect.HIDE_CHECKBOXES,
        NetworkSelect.SHOW_SHARES,
        NetworkSelect.SHOW_HIDDENSHARES,
        NetworkSelect.SHOW_DIRECTORIES,
        NetworkSelect.SHOW_FILES);
    }
  • 步骤 7 可以使用以下方法提取域、计算机、共享、...、文件

    string myDomain = networkSelect1.GetCurrentDomain();
    string myComputer = networkSelect1.GetCurrentComputer();
    string myShare = networkSelect1.GetCurrentShare();
    string myDir = networkSelect1.GetCurrentDirectory();
    string myFile = networkSelect1.GetCurrentFile();
    string fullPath = networkSelect1.GetFullName();

最后,剩下的都由您来完成...

几点说明

遗憾的是,浏览网络可能是一项耗时的任务。 如果您没有所有域计算机的完全权限,则尤其如此。 因此,在枚举域、服务器、...文件时,控件会显示“正在为您努力工作,请稍候...”消息。

尽管您可以启用复选框,但我尚未包含读取选中路径的方法。 嘿,这是第一个版本:0.90。 不会花费太多时间。 如果您迫切需要它,请给我留言。

我已经知道该控件显示了过多的警告。 将在下一个版本中修复。 好处是,当您无法查看计算机的共享时,它还会显示一个弹出窗口,要求输入用户名/密码。

版本历史

没有什么历史。 这是第一个版本。 让我们称其为 V0.9.0。

© . All rights reserved.