【发布时间】:2015-10-27 09:40:14
【问题描述】:
代码如下:
private string SelectNetworkFolder(FolderBrowserDialog oFolderBrowserDialog)
{
Type type = oFolderBrowserDialog.GetType();
FieldInfo fieldInfo = type.GetField("rootFolder", BindingFlags.NonPublic | BindingFlags.Instance);
fieldInfo.SetValue(oFolderBrowserDialog, (Environment.SpecialFolder)18);
oFolderBrowserDialog.Description = "Choose destination for the zip file(s)";
PackageImagesViewModel viewModel = this.DataContext as PackageImagesViewModel;
oFolderBrowserDialog.SelectedPath = viewModel.GetMediaFolder();
if (oFolderBrowserDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
return oFolderBrowserDialog.SelectedPath.ToString();
}
else
{
return "";
}
}
这就是事情变得疯狂的地方 -
- 如果 SelectedPath 设置为以反斜杠结尾的字符串,我会得到 网络和只有那个服务器 - 选择了指定的路径。
- 如果 SelectedPath 设置为不以 反斜杠,我从 1) 以及我的其他 3 个工作站中得到一切 网络(应该有 700 左右)。
- 如果我不设置 SelectedPath,我将获得网络上的所有工作站。
任何人都知道如何列出所有工作站并将当前选择作为指定文件夹吗?其中一项要求是仅显示网络共享。
【问题讨论】: