Я ищу карту в моей программе. Мои пользователи могут использовать каждую версию Windows с XP. Поэтому мне нужен самый универсальный метод. Раньше я использовал первый метод и, как правило, он работал хорошо для меня. Но действительно нет способа поймать ошибки с ним (что я знаю в любом случае). Второй будет легко позволить мне обернуть вокруг него блок try/catch, но для всех поисков, которые я выполнил для альтернатив методу 1, я только один раз пропустил метод 2. Поэтому мне остается задаться вопросом, достаточно ли это достаточно для такой разнообразной среды. Может ли кто-нибудь сказать мне, если метод 2 безопасен для большинства обстоятельств?Карта сетевого диска: «net.exe USE» vs WshNetwork.MapNetworkDrive?
Метод 1
Process.Start("net.exe", @"USE Z: \\server\share /user:domain\username password").WaitForExit();
Способ 2 ссылки на Windows Script Хост Object Model
IWshNetwork_Class network = new IWshNetwork_Class();
network.MapNetworkDrive("k:", @"\\server\share");
Мне нравится # 2. Он выглядит более чистым и предоставляется как часть API. Однако, как насчет возможности указывать учетные данные и т. Д.? –
Да, вы можете использовать учетные данные. Я просто оставил это для ясности. – JimDel
http://pinvoke.net/default.aspx/mpr/WNetAddConnection2.html –