C# 检查路径是否在网络上
在我的应用程序中,我有一个对话框,用户可以在其中选择数据库备份位置。C# 检查路径是否在网络上,c#,.net,vb.net,C#,.net,Vb.net,在我的应用程序中,我有一个对话框,用户可以在其中选择数据库备份位置。 如果用户选择的位置“可能不安全”,我想警告用户 我想考虑以下位置安全: 当所选文件夹位于网络上时 (通过映射驱动器(I:\Backup)或UNC表示法(\\server2\Backup) 当选定文件夹位于与数据库文件夹不同的物理磁盘上时 如何获取有关选定文件夹的此类信息? 我知道DriveInfo类,但它只处理驱动器号,不处理UNC路径。看看DirectoryInfo对象。在选定的路径上打开一个,您可以检查许多内容。也许您需要
如果用户选择的位置“可能不安全”,我想警告用户 我想考虑以下位置安全:
(通过映射驱动器(
I:\Backup
)或UNC表示法(\\server2\Backup
)我知道
DriveInfo
类,但它只处理驱动器号,不处理UNC路径。看看DirectoryInfo
对象。在选定的路径上打开一个,您可以检查许多内容。也许您需要获取目录安全性
,并检查路径是否已锁定
主动式程序员可能会为他/她的应用程序备份创建一个新文件夹,并自己创建一个强大的ACL…看看该功能:
class Program
{
[DllImport("shlwapi.dll")]
private static extern bool PathIsNetworkPath(string pszPath);
static void Main(string[] args)
{
Console.WriteLine(PathIsNetworkPath("i:\Backup"));
}
}
嗨,强盗!如果下面的一个答案提供了一个可行的解决方案,请您接受这个答案,这样这个问题就不再显示为
未回答
。非常感谢。仅供参考:该函数不验证指定的网络资源是否存在、当前是否可访问或用户是否有足够的权限访问它。