VBS скрипт показывающий IP и Hostname компьютера

28.03.11

База данных - Инструменты администратора БД

Скрипт позволяющий админу узнать IP и Hostname не сильно разбирающегося в компах пользователя.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование SM По подписке [?] Купить один файл
showipv2.vbs
.vbs 1,94Kb
157
157
1 SM
Скачать Купить за 1 850 руб.
showip.vbs
.vbs 1,07Kb
41
41
1 SM
Скачать Купить за 1 850 руб.

Этот скрипт, выложнный в общедоступный каталог, позволит сократить вам время на объяснение пользователю как узнать свой IP (например если вы хотите подключиться к нему удаленно).

Если кому понравится можете поблагодарить Яндекс.Деньгами на счет 41001634129126.

UPD 25.03.2011:

1) Добавил вывод информации о IP и Hostname клиента в терминальной сессии (showipv2.vbs)

См. также

Инструменты администратора БД Инструментарий разработчика Роли и права Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

10000 руб.

10.11.2023    7406    27    4    

51

Инструменты администратора БД Роли и права Системный администратор Программист Пользователь 8.3.14 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 15.12.2023, версия 1.1.

14400 руб.

06.12.2023    5722    24    1    

55

SALE! %

Инструментарий разработчика Инструменты администратора БД Системный администратор Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

3600 2880 руб.

14.01.2013    182215    1105    0    

876

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтер Пользователь Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    30151    88    151    

63

Инструменты администратора БД Системный администратор Программист Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Брандмауэр для сервера 1С включает в себя управление возможностью начала и возобновления сеансов пользователей по различным условиям, ограничение общего числа возможных сеансов для работы с информационной базой, резервирование возможности работы с информационной базой определенных польззователей, запрет запуска нескольких сеансов для пользователя, журнализация событий начала (возобновления) и завершения (гибернации) сеансов, ведение списка активных сеансов для информационных баз кластера серверов

3600 руб.

06.02.2017    31581    32    18    

48

Архивирование (backup) Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Данная разработка позволит решить вопрос с резервным копированием Ваших баз в автоматическом режиме, расположенных на сервере 1С. Система умеет ставить блокировки на вход, блокировать фоновые задания, принудительно отключать сеансы пользователей. И все это система делает в автоматически при создании бэкапа (или через команду). Выгрузка происходит в родной формат 1С - .dt. Так же система умеет архивировать данные выгрузки с установкой пароля. Умеет менять расширение файла zip или dt на любое указанное вами, что позволит сохранить выгрузки от шифровальщика. Может удалять старые копии выгрузок, оставляя указанное количество резервных копий, начиная с самой поздней.

6000 руб.

06.11.2012    71370    623    45    

83

Мониторинг Инструменты администратора БД Системный администратор Платформа 1С v8.3 Россия Платные (руб)

Конфигурация Session Monitor предназначена для мониторинга сервера 1С с целью отслеживания чрезмерной нагрузки от конкретных сеансов и скорости реакции рабочих процессов.

1500 руб.

01.12.2020    15207    38    0    

55

HighLoad оптимизация Инструменты администратора БД Системный администратор Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Обработка для простого и удобного анализа настроек, нагрузки и проблем с SQL сервером с упором на использование оного для 1С. Анализ текущих запросов на sql, ожиданий, конвертация запроса в 1С и рекомендации, где может тормозить.

2 стартмани

15.02.2024    10325    208    ZAOSTG    74    

111
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Поручик 4684 17.03.11 20:33 Сейчас в теме
Только что самому потребовалось, собрался ваять, а тут готовое.
2. mozz 148 18.03.11 09:00 Сейчас в теме
Тоже давно собирался, наконец таки руки дошли.
3. bulpi 216 24.03.11 15:11 Сейчас в теме
Чем поможет пользователю мелькнувшее черное окно? Или ему надо объяснять : набери cmd, потом имя скрипта ... Неудобно. Но все равно плюс за просвещение меня в области бейсика :)
4. mozz 148 24.03.11 15:33 Сейчас в теме
Так двойной щелчек мышкой по файлу выведет то окошко, которое у меня в иллюстрациях выложено, так что cmd пользователю набирать не надо.
5. totalcommand 26.03.11 05:53 Сейчас в теме
строчку
Set Shell = CreateObject("WScript.Shell")
целесообразно вынести за пределы блока шалости
6. mozz 148 28.03.11 09:25 Сейчас в теме
(5) Упс :D не заметил... Спасибо за подсказку, исправил.
7. mctsimco 30.03.11 12:53 Сейчас в теме
Еще парочка аналогичных вещей для 7.7:

//*******************************************
Функция глИмяДомейнЮзера() Экспорт
ТекстСкрипта = "function GenUsername()
|Dim objNet
|On Error Resume Next
|Set objNet = CreateObject(""WScript.NetWork"")
|If Err.Number <> 0 Then
|GenUsername = 0
|return
|End if
|res = trim(objNet.UserDomain) & chr(92) & objNet.UserName
|on error goto 0
|Set objNet = Nothing
|GenUsername = res
|end function" + Симв(13)+ Симв(10);

Попытка
ScrptCtrl=СоздатьОбъект("MSScriptControl.ScriptControl");
ScrptCtrl.Language="vbscript";
ScrptCtrl.AddCode(ТекстСкрипта);
ДомейнЮзер = СокрЛП(ScrptCtrl.Run("GenUsername"));
Возврат ДомейнЮзер;
Исключение
Сообщить("Ошибка оскрипта");
Сообщить(ОписаниеОшибки());
Возврат "";
КонецПопытки;
КонецФункции

//*******************************************
Функция глПроксиСервер() Экспорт
ТекстСкрипта = "function get_proxy()
|Dim WshShell_reg
|Set WshShell_reg = CreateObject(""WScript.Shell"")
|get_proxy = trim(WshShell_reg.RegRead(""HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersio­n\Internet Settings\ProxyServer""))
|set WshShell_reg = Nothing
|end function" + Симв(10) + Симв(13);

Попытка
ScrptCtrl=СоздатьОбъект("MSScriptControl.ScriptControl");
ScrptCtrl.Language="vbscript";
ScrptCtrl.AddCode(ТекстСкрипта);
Результат = СокрЛП(ScrptCtrl.Run("get_proxy"));
Возврат Результат;
Исключение
Сообщить("глПроксиСервер: Ошибка получения данных из реестра");
Сообщить(ОписаниеОшибки());
Возврат "";
КонецПопытки;
КонецФункции
8. cool.vlad4 2 30.03.11 13:15 Сейчас в теме
С помощью WMI Code Creator (и респект Душелову за WMI Code Creator 1С) ушло меньше минуты

strComputer = ".";
objWMIService = ПолучитьCOMОбъект("winmgmts:\\" + strComputer + "\root\CIMV2");
colItems = objWMIService.ExecQuery("Select * from Win32_NetworkAdapterConfiguration Where IPEnabled=TRUE",,48);
Для Каждого objItem Из colItems Цикл
Сообщить("----------------------------------- ");
Сообщить("Win32_NetworkAdapterConfiguration");
Сообщить("----------------------------------- ");
Для Каждого Стр Из objItem.IPAddress Цикл
Сообщить("IPAddress: " + Стр);
КонецЦикла;
КонецЦикла;
Так, что это так...ничего особенного...
skom; Allbors; +2 Ответить
9. mozz 148 30.03.11 16:09 Сейчас в теме
(8) Да собственно я и не говорю что это что-то особенное. Просто инструмент для админа, которому надоело каждый раз объяснять юзеру как через Пуск->выполнить->cmd и т.д. узнать свой ИП (чтобы подключиться к ниму radmin`ом или чем-нибудь из той же серии).
Согласитесь - проще объяснить что нужно зайти на подключенный logon скриптом сетевой диск (например U:\) и дважды щелкнуть на скрипте.
А то что это можно реализовать и в 1С почему бы и нет - только вот надо ли?
10. cool.vlad4 2 30.03.11 16:13 Сейчас в теме
(9) В принципе да...но только зачем юзверю знать ip...чем меньше знает, тем лучше спит...пусть лучше офис изучают...и 1с, конечно...
11. mozz 148 30.03.11 16:27 Сейчас в теме
(10) Тогда нужно чтобы у всех были статические IP (т.к. DHCP может выдать другой ИП) и список типа:
Мария Ивановна 192.168.8.231
Михаил Степанович 192.168.8.215
Николай Петрович 192.168.8.88
и т.д.
Звонит Мария Ивановна говорит что у нее 1С выдала непонятное окошко и она не знает как его описать - лезем в список, ищем Марию Ивановну, подрубаемся к ней и смотрим на окошко.
12. cool.vlad4 2 30.03.11 16:37 Сейчас в теме
(11) Теперь смысл понятен...только я бы сделал утилиту, которая отсылает отчет администратору, по действию пользователя, т.е. в принципе тоже самое...через чат например можно...например через, если не отрублен , net send ... через AD - все и так в принципе понятно ...
14. Abadonna 3964 02.04.11 01:02 Сейчас в теме
(11)
Звонит Мария Ивановна говорит что у нее 1С выдала непонятное окошко и она не знает как его описать - лезем в список

Звонит Мария Ивановна, бац правой кнопкой на на корпоративном чате на её имени, там, помимо прочего, открыть "Комп-блабла". Вот так у реальных пацанов ;)
"Вы еще кипятите? Тогда мы идем к Вам!" :D
Сервис М
23. maksa2005 542 23.11.15 11:45 Сейчас в теме
(8) cool.vlad4,
-----------------------------------
Win32_NetworkAdapterConfiguration
-----------------------------------
IPAddress: 192.168.1.200
IPAddress: fe80::7879:846:ab7:d429
Получает IPAddress сервера, а не клиента.
13. sound 536 31.03.11 10:02 Сейчас в теме
Для терминалки можете (не сочтите за рекламу) за идею взять вот эту хрень.
15. sound 536 02.04.11 09:14 Сейчас в теме
Можно пойти дальше: Звонит Мария Ивановна, и тут "оно само" бац и сразу весь расклад: распознало кто это звонит, с какого номера, ну а всякие там IP-шники это уж вообще становится ни к чему, и сразу список действий типа:
1) Ответить
2) Ответить c видео :D
3) Связать с главным бухгалтером
.....
Действие по умолчанию:
N) Послать В ... (и тут список 2-го уровня :D )
Гибкая система настроек, без внешних компонент, не гербалайф :D
16. sound 536 02.04.11 10:37 Сейчас в теме
Кстати, как-то приходилось скрещивать 1С с Asterisk (http://www.buligin.com/ejauja.html), здесь тоже об этом уже не раз упоминалось, в принципе можно мутить достаточно интересные вещи типа звонить из 1С, определять кто тебе позвонил, получать кое-какую статистику и т.д. Не сказать конечно, что оно очень круто все, но кое-что из этой ВК выжать все таки можно, была бы фантазия и время...
17. mozz 148 04.04.11 11:48 Сейчас в теме
(16) Еще бы готовый работающий пример к ней а лучше исходники к этой dll ;) ...
18. sound 536 04.04.11 11:49 Сейчас в теме
(17) Согласен, но похоже проект мертвый, а жаль. А там разве нет примера?
19. --toxic-- 29.06.11 07:29 Сейчас в теме
А кто может подсказать, как средствами 1С проверить доступность ПК в сети?

If Unavailable(компутер) then чтото типа вот этого
20. sound 536 29.06.11 08:31 Сейчас в теме
(19) Да лехко:

Вариант №1:

// Функция Avaible проверяет "пингуется" ли указанный IP
Function Avaible(IP) Export
	Try
		ServicesSet = GetCOMObject("winmgmts:{impersonationLevel=impersonate}");
		Items = ServicesSet.ExecQuery("SELECT StatusCode from Win32_PingStatus WHERE address = '" + IP + "' AND Timeout=3");
	Except
		Return Undefined;
	EndTry;
	For Each Item In Items Do
		If Item.StatusCode = 0 Then
			Return True;
		Else
			Return False;
		EndIf;
	EndDo;
EndFunction // Avaible()
Показать


Вариант №2:

Function Avaible_2(IP) Export
	scrptCtrl = New COMObject("MSScriptControl.ScriptControl");
	scrptCtrl.language = "vbscript";
	scrptCtrl.addcode("
	|Function Avaible()
	|Set objWMIService = GetObject(""winmgmts:{impersonationLevel=impersonate}"")
	|Set objPing = objWMIService.ExecQuery(""select * from Win32_PingStatus where address = '" + IP + "'"")
	|For Each objStatus in objPing
	|If IsNull(objStatus.StatusCode) Or objStatus.StatusCode <> 0 Then
	|   Avaible = 0
	|Else
	|   Avaible = 1
	|End If
	|Next
	|End function
	|");
	Return ScrptCtrl.Run("Avaible");
EndFunction // Avaible_2()

Показать


Пилили уже эту тему тут, кстати поиском тоже ищется:
http://infostart.ru/gsearch/?cx=013045212460068984860%3Azhih0apwy_a&cof=FORID%3A9&ie=wind­ows-1251&q=ping&sa=%CD%E0%E9%F2%E8
Somebody1; +1 Ответить
21. MrWonder 646 11.09.12 11:46 Сейчас в теме
Пипец, скоро echo %COMPUTERNAME% && pause как решение будут выкладывать
Вы бы тогда дополнили Ваше "решение c плюсиком автору" отображением информации только по активному интерфейсу,
зачем инфтерфейсы без линка отражать? Благодарности не надо

Set objService = GetObject("winmgmts:\\.\root\CIMV2")

Set Interfaces = objService.ExecQuery("SELECT * FROM Win32_NetworkAdapter where NetConnectionStatus=2")
For Each Interface In Interfaces
Set IPs = objService.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration where caption='"&Interface.caption&"'")
For Each ip In IPs
strIPAddress = Join(ip.IPAddress, ",")
MsgBox strIPAddress
Next
Next
iuridis; user713084; +2 Ответить
22. mozz 148 19.02.13 14:08 Сейчас в теме
(21) MrWonder, вспоминается анекдот:

- Что-то не нравится мне наш вождь...
- Не нравится - не ешь.
24. пользователь 04.12.16 14:14
Сообщение было скрыто модератором.
...
25. Serginio 940 04.12.16 16:06 Сейчас в теме
Используя Использование сборок .NET в 1С 7.x b 8.x. Создание внешних Компонент

Использование классов .Net в 1С для новичков

DNS=Врап.ПолучитьТипИзСборки("System.Net.Dns","System.dll");
// Получение имени компьютера.
host = Dns.GetHostName();
// Получение ip-адреса.
 ip =Dns.GetHostByName(host).AddressList.get_Item(0);

Сообщить(ip.ToString());
//или
 Адреса=Dns.GetHostByName(host).AddressList:

 Для каждого адрес из Адреса Цикл
Сообщить(адрес .ToString());
КонецЦикла
Показать
26. merlin1975 2 10.01.18 11:43 Сейчас в теме
Здравия!
Так для 7.7 что-нибудь для определения IP клиента терминального подключения есть?
Попробовал многое, но получается IP только самого сервера а не клиента.
Прошу помощи.
Благодарю.
27. mozz 148 11.01.18 08:05 Сейчас в теме
(26) смотрите (7) ответ, в качестве скрипта - передавайте мой скрипт и будет Вам счастье.
28. merlin1975 2 11.01.18 08:25 Сейчас в теме
И он покажет именно клиентский IP в терминале?
29. mozz 148 11.01.18 12:01 Сейчас в теме
30. merlin1975 2 11.01.18 14:14 Сейчас в теме
"Строка: 40, Символ: 2, Ошибка: Компьютер удаленного сервера не существует или недоступен 'GetObject'"..
Как-то так...
31. merlin1975 2 11.01.18 14:54 Сейчас в теме
Попробовал с другого компа - отработал!
Теперь буду разбираться с 1С 7.7
PS Так и не понял, как это вставить в 1С 7.7.
Если можно пришлите код для !c 7.7. Просто не понимаю, что из скрипта куда правильно вставить.
Благодарю.
32. mozz 148 11.01.18 15:48 Сейчас в теме
(31) что-то типа:

WshShell = СоздатьОбъект("WScript.Shell");
Запуск = "%comspec% /c "+ИмяФайлаНаДиске+".vbs";
WshShell.Exec(Запуск);
33. merlin1975 2 11.01.18 16:11 Сейчас в теме
(32)
Хм-м... Так это как запуск стороннего приложения. А надо получить переменную с IP клиента.
У меня все (пытаюсь по-аналогии с 7 постом) пишет ошибка скрипта... Хотя Имя пользователя и компа получает правильно...
34. merlin1975 2 12.01.18 22:01 Сейчас в теме
Ещё одно но: на сервере терминалов под учеткой с правами "Пользователи удаленного рабочего стола" скрипт не отрабатывает - "Разрешение отклонено GetObject 800А0046". Попробовал через SWbemLocator - "Отказано в доступе 80070005"...
35. M_Volkov 5 18.11.20 17:48 Сейчас в теме
Все скрипты в 1С выполняются с миганием черного окна, без него возможно?
Оставьте свое сообщение