gpt4 book ai didi

c# - 从 FolderBrowserDialog 获取网络路径而不是驱动器号

转载 作者:行者123 更新时间:2023-11-30 23:24:38 24 4
gpt4 key购买 nike

我有一个带有 FolderBrowserDialog 的 winform,可以从网络驱动器中选择一个文件夹。问题在于它返回驱动器号 (X:\Folder...) 而不是网络路径 (\\Network\Projects\Folder...)。如何获取网络路径?

最佳答案

将路径显示为 MessageBox 中的网络路径的快速粗略代码。您可能需要添加额外的检查和/或对其进行一些重组。

using System.Management;

var dialog = new OpenFileDialog();
dialog.ShowDialog();

var path = dialog.FileName;
using (var managementObject = new ManagementObject())
{
managementObject.Path = new ManagementPath($"Win32_LogicalDisk='{path.Substring(0,2)}'");
var driveType = (DriveType)(uint)managementObject["DriveType"];
var networkPath = Convert.ToString(managementObject["ProviderName"]);


if (driveType == DriveType.Network)
{
MessageBox.Show(path.Replace(path.Substring(0, 3), networkPath));
}
}

MessageBox.Show(path);

关于c# - 从 FolderBrowserDialog 获取网络路径而不是驱动器号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37687039/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com