#vbscript
#vbscript
Вопрос:
Время от времени мне нужно редактировать файлы хоста на удаленных машинах. Было бы намного проще, если бы я мог использовать для этого быстрый vbscript. Сценарий, над которым я работаю, не вносит изменений, и я не слишком уверен, почему.
on error resume next
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Set fso = CreateObject("Scripting.FileSystemObject")
Set WshShell=CreateObject("WScript.Shell")
strComputer = inputbox("Enter remote computer name or leave as localhost for this computer","Get Hosts file","Localhost")
If strComputer = "" Then
WScript.Quit
End If
HostsFile = strComputer amp; "WindowsSystem32DriversetcHosts"
Set filetxt = fso.OpenTextFile(HostsFile, ForAppending, True)
DNSEntry = inputbox("Enter the DNS entry" amp; vbCrLf amp; "ex: 192.168.0.2 domain.com","DNSEntry")
If DNSEntry = "" Then
WScript.quit
Else
filetxt.WriteLine(DNSEntry)
filetxt.Close
End If
WScript.quit
Комментарии:
1. Избавьтесь от злого глобального OERN.
2. прокомментировал это, и все равно ничего хорошего.
3. но вы получите сообщение об ошибке.
4. на самом деле я не получаю никаких ошибок. код проходит так, как будто он работает, но не работает. я использовал msgboxes, чтобы увидеть, где находится код, и возвращает то, что он делает, и, похоже, он работает. просто нет.
5. Какое значение имеет значение
HostsFile
прямо перед попыткой открыть этот файл?
Ответ №1:
Если вы планируете использовать административный общий ресурс, измените эту строку:
HostsFile = strComputer amp; "WindowsSystem32DriversetcHosts"
Для
HostsFile = "\" amp; strComputer amp; "c$WindowsSystem32DriversetcHosts"