Как сделать так, чтобы код .NET сопоставил диск Z: с путем UNC для учетной записи SVNdatamgmt?
Я пытаюсь сопоставить локальный диск с сетевым путем UNC в консольном приложении .NET. Похоже, код работает из командной строки как для служебной учетной записи (№ 2 и № 3), так и для моих учетных данных (№ 4). Но при запуске из консольного приложения с использованием исходного кода .NET учетная запись службы не работает (№ 5), но мои учетные данные работают (№ 6).
Прошлой ночью я заметил, что получил ошибку (# 1). Подождав 30 минут, все заработало. Таким образом, вы можете игнорировать № 1. Я подумал, что упомяну об этом, на случай, если это даст представление о том, что происходит.
Консольное приложение работает от имени администратора на компьютере с Windows Server 2008. И SVCdatamgmt, и macgyver являются администраторами на этом компьютере. Команды также выполняются на этой же машине.
================================================== ======================
1.) Это не сработало прошлой ночью:
C:>net use z: \\uwhc-sas2\SASHIMC /USER:SVCdatamgmt thepassword
System error 1909 has occurred.
The referenced account is currently locked out and may not be logged on to.
================================================== ======================
2.) Подождал 30 минут, после чего заработало (без домена):сильный>
C:>net use z: \\uwhc-sas2\SASHIMC /USER:SVCdatamgmt thepassword
The command completed successfully.
================================================== ======================
3.) Это также работает (с доменом):
C:>net use z: \\uwhc-sas2\SASHIMC /USER:UWHIS\SVCdatamgmt thepassword
The command completed successfully.
================================================== ======================
4.) Это также работает с моими учетными данными:
C:>net use z: \\uwhc-sas2\SASHIMC /USER:macgyver thepassword
The command completed successfully.
================================================== ======================
5.) Код .NET, который сопоставляет диск. Учетные данные SVCdatamgmt не работают.
public static void MapNetworkDriveToUNC()
{
var command = @"net use " + mapDrive + " " + uncPath + " " + uncUser + " " + uncPass;
ExecuteCommand(command, 10000);
}
public static void UnmapNetworkDriveToUNC()
{
var command = "net use " + mapDrive + " /delete";
ExecuteCommand(command, 5000);
}
================================================== ======================
6.) Код .NET, который сопоставляет диск. Мои учетные данные работают (macgyver)
-- тот же код, что и №5 --
================================================== ======================
К вашему сведению: перед выполнением каждой приведенной выше команды я должен отключить (отключить) диск, используя этот код. ..
C:\>net use z: /delete
z: was deleted successfully.