映射网络驱动器:“;net.exe USE”;与WshNetwork.MapNetworkDrive

本文关键字:USE MapNetworkDrive WshNetwork exe net 网络 驱动器 映射 | 更新日期: 2023-09-27 18:28:15

我想在程序中映射一个驱动器。我的用户可以使用XP以上的所有版本的Windows。所以我需要最通用的方法。我以前用过第一种方法,通常它对我来说效果很好。但真的没有办法发现它的错误(我知道)。第二种方法可以很容易地将try/catch块包裹起来,但对于我为方法1的替代方法所做的所有搜索,我只运行过一次方法2。因此,这让我想知道,对于如此多样化的环境来说,它是否足够可靠。有人能告诉我方法2在大多数情况下是否安全吗?

方法1

Process.Start("net.exe", @"USE Z: ''server'share /user:domain'username password").WaitForExit();

方法2引用Windows脚本主机对象模型

IWshNetwork_Class network = new IWshNetwork_Class(); 
network.MapNetworkDrive("k:", @"''server'share");

映射网络驱动器:“;net.exe USE”;与WshNetwork.MapNetworkDrive

另一种方法是pinvoke实际的Win32 api(WNetAddConnection2A、WNetCancelConnection2A等)。退房http://www.codeguru.com/csharp/csharp/cs_network/windowsservices/article.php/c12357/