명령 줄에서 제대로 작동합니다. net use T : \ 123.45.67.89 \ TEST mytestuser/user : MYTESTUSER드라이브를 매핑 할 때 asp.net에서 '로컬 장치 이름이 이미 사용 중'인 이유는 무엇입니까?
그러나 다음 코드로, 다음과 같은 오류와 예외는 항상 슬로우되는, asp.net을 사용 : 내가 먼저 모든 드라이브에서 분리 시도 드라이브
를 매핑 할 때 '로컬 장치 이름이 이미 사용 중입니다' 다른 드라이브 문자로 매핑. 나는 다른 서버에서이 수행했으며, 에 다른 서버
문제는 드라이브 문자로 확실히인가?
temp = MapDrive("T", "\\123.45.67.89\TEST", "MYTESTUSER", "mytestuser")
Public Shared Function MapDrive(ByVal DriveLetter As String, ByVal Path As String, ByVal Username As String, ByVal Password As String) As Boolean
Dim ReturnValue As Boolean = False
Dim p As New System.Diagnostics.Process()
p.StartInfo.UseShellExecute = False
p.StartInfo.CreateNoWindow = True
p.StartInfo.RedirectStandardError = True
p.StartInfo.RedirectStandardOutput = True
p.StartInfo.FileName = "net.exe"
p.StartInfo.Arguments = " use " & DriveLetter & ": " & Path & " /user:" & Username & " " & Password & " /persistent:yes"
p.Start()
p.WaitForExit()
Dim ErrorMessage As String = p.StandardError.ReadToEnd()
Dim OuputMessage As String = p.StandardOutput.ReadToEnd()
Dim StoreFile As System.IO.Directory
Dim Files As String()
Dim File As String
If ErrorMessage.Length > 0 Then
Throw New Exception("Error:" & ErrorMessage)
Else
ReturnValue = True
End If
Files = StoreFile.GetFiles("T:\FINDTHIS\", "*")
For Each File In Files
HttpContext.Current.Trace.Warn(File)
Next
Return ReturnValue
End Function
왜 ASP.NET에서 드라이브를 매핑하고 있습니까? – jrummell
나는 UNC를 사용하기 시작했다. 그러나 코드에서 UNC에 대한 연결을 제한하려고 시도했을 때 도메인을 요구할 때 어려움에 처하게되었고 파일 서버는 도메인이 아닌 작업 그룹에 있습니다. 그래서 드라이브 매핑이 차선책으로 보입니다. – beckyp