В настоящее время у меня есть сценарий, который берет имя ПК, а затем выводит IP-адрес, а затем еще одно текстовое поле с Полностью квалифицированным доменным именем. Я использовал InputBox вместо Msgbox, поскольку мне нужно иметь возможность копировать результаты в буфер обмена.Пользовательский текстовый ящик VBScript
Мой вопрос: есть ли способ вывода как IP, так и FQDN в том же текстовом поле, а также кнопка «Копировать в буфер обмена» рядом с каждой из них?
Вот что я использую до сих пор:
Sub Ping
Set objShell = CreateObject("WScript.Shell")
Dim tmp
Const ForReading = 1
Set objFSO = CreateObject("Scripting.FileSystemObject")
Message = "Enter the Computer Name you would like to convert to an IP address."
Host_Names=InputBox(message)
wmiQuery = "Select * From Win32_PingStatus Where " & _
"Address = '" & Host_Names & "'"
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Set objPing = objWMIService.ExecQuery(wmiQuery)
For Each objStatus in objPing
If IsNull(objStatus.StatusCode) Or objStatus.Statuscode<>0 Then
Msgbox Host_Names & " is Unreachable!"
Exit Sub
Else
tmp = InputBox("The IP Address is:",,objStatus.ProtocolAddress)
tmp = objStatus.ProtocolAddress
End If
Next
strIP = tmp
if strIP = "" then
Exit Sub
end if
Set objScriptExec = objShell.Exec("ping.exe -n 1 -a " & strIP)
strPingResult = objScriptExec.StdOut.ReadAll
Set objStdOut = objScriptExec.StdOut
strNoPing = "Request timed out."
arrayPingResult = split(strPingResult, vbcrlf)
strCheck = strComp(arrayPingResult(3), strNoPing, 1)
if strCheck = 1 then
Msgbox "PC not on the network. Quitting Program"
Exit Sub
else
arrayPCLine = split(arrayPingResult(1), " ")
tmp = InputBox("The fully qualified name is:",,arrayPCLine(1))
end if
End Sub
Спасибо за любую помощь вы можете дать мне.
Связанный: http://stackoverflow.com/questions/7172431/displaying-an-image-in-a-vbscript-msgbox –