Public Function ValueSepR(ByVal RawString As String, ByVal SepChar As String) As String
If InStr(1, RawString, SepChar) < 0 Then
ValueSepR = Microsoft.VisualBasic.Right(RawString,Len(RawString) - InStr(1, RawString, SepChar))
Else
ValueSepR = RawString
End If
End Function
Public Function GetMac(ByVal IP As String) As String
Try
Dim dirResults As String
Dim psi As System.Diagnostics.ProcessStartInfo = New System.Diagnostics.ProcessStartInfo()
Dim proc As New System.Diagnostics.Process()
psi.FileName = "nbtstat"
psi.RedirectStandardInput = False
psi.RedirectStandardOutput = True
psi.Arguments = "-A " & IP
psi.UseShellExecute = False
proc = System.Diagnostics.Process.Start(psi)
Dim x As Integer = -1
Do Until x -1
If dirResults < Nothing Then
x = dirResults.Trim.ToLower.IndexOf("mac address", 0)
If x -1 Then
Exit Do
End If
End If
dirResults = proc.StandardOutput.ReadLine
Loop
proc.WaitForExit()
GetMac = ValueSepR(dirResults.Trim, "=").Trim
Catch err As Exception
Response.Write(err.Message & err.StackTrace)
End Try
End Function