最近遇到了一個問題
要利用帳號密碼登入到另一台Server
這次此篇將教大家如何利用net use 指令連接和斷開
首先先介紹一下 net use 指令
net use就是連結電腦伺服器或是中斷電腦伺服器跟共享資源的連接
下方列出幾個常用的...
net use 顯示目前連接的網路List
net use \\ip\資料路徑 " " /user:" " --> 建立資料路徑的無權限連接
net use \\ip\資料路徑 "密碼" /user:"用戶名" --> 建立資料路徑的有權限連接
net use k: \\ip\C$ "密碼" /user:"用戶名" --> 直接連接對方C:到本地為K:
net use \\ip\資料路徑 /delete --> 刪除資料路徑的連接
net use k: /delete --> 刪除對方到本地的為K:的路徑
那下方會寫一隻程式供大家參考~
Imports System.Diagnostics --> 加入參考
''' <summary>
''' 連結電腦伺服器
''' </summary>
''' <param name="path">連結電腦伺服器的路徑</param>
''' <param name="userName">使用者名稱</param>
''' <param name="passWord">密碼</param>
''' <remarks></remarks>
Protected Sub ConnectState(ByVal path As String, ByVal userName As String, ByVal passWord As String)
Dim proc As New Process --> 建立一個新的處理程序
Dim dosLine As String = ""
Dim errormsg As String = ""
Try
--> 執行CMD(命令提示字元)
proc.StartInfo.FileName = "cmd.exe"
--> 允許用戶啟動圖形應用程序或打開文檔
proc.StartInfo.UseShellExecute = False
--> 將讀取應用程序的輸入StandardInput
proc.StartInfo.RedirectStandardInput = True
--> 將應用程序的文本輸出StandardOutput
proc.StartInfo.RedirectStandardOutput = True
--> 將應用程序的錯誤輸出StandardError
proc.StartInfo.RedirectStandardError = True
--> 在新窗口中啟動該進程
proc.StartInfo.CreateNoWindow = True
proc.Start() --> 處理程序啟動
'執行連接資料夾路徑
dosLine = "net use " + path + " " + passWord + " /user:" + userName
proc.StandardInput.WriteLine(dosLine) --> 執行指令
proc.StandardInput.WriteLine("exit") --> 關閉指令
'等待關閉
While (Not proc.HasExited)
proc.WaitForExit(1000)
End While
'抓取錯誤資訊
errormsg = proc.StandardError.ReadToEnd()
proc.StandardError.Close()
If (String.IsNullOrEmpty(errormsg)) Then
Throw New Exception(errormsg)
End If
Catch ex As Exception
'可輸出錯誤訊息
Exit Sub
Finally
'關閉程序
proc.Close()
proc.Dispose()
End Try
End Sub
若要斷開則是將指令改成 "net use " + path + " " + " /delete"
這次的介紹就到這邊囉~希望對大家有所幫助
一樣若有錯誤或問題歡迎留言
參考 : https://docs.microsoft.com/en-us/dotnet/?view=netframework-4.6
