Вывод системной информации о компьютере на рабочий стол Windows с помощью BgInfo
15.11.2022
itpro
Active Directory, Windows 10, Windows Server 2016, Групповые политики, Утилиты
комментариев 11
Если вы управляете большим количеством Windows серверов или рабочих станций, бывает очень полезно вывести базовую информацию о системе и окружении прямо на рабочий стол Windows. Это будет особенно удобно вашим пользователям, которым чтобы сообщить техопддержке свой IP или MAC адрес, имя компьютера или домена, версию Windows, количество памяти или тип CPU, и т.д., достаточно посмотреть на рабочий стол. Для вывода информации об операционной системе поверх рабочего стола мы будем использовать утилиту BgInfo от Microsoft.
Утилита Bginfo позволяет наложить текстовую информацию поверх изображения обоев рабочего стола пользователя и подменить используемый файл обоев.
Формируем выводимый текст рабочего стола в Bginfo
Сначала вам нужно сформировать шаблон, который будет использоваться Bginfo для вывода информации на рабочий стол Windows.
- Скачайте утилиту Bginfo (https://docs.microsoft.com/en-us/sysinternals/downloads/bginfo) и запустите исполняемый файл bginfo.exe;
- Появится окно стандартной конфигурации Bginfo, в котором выводится список системной информации, которую по-умолчанию выводит утилита;
- Окно Bginfo представляет собой простой текстовый редактор, в котором можно добавить, удалить или отредактировать любое из выводимых значений, изменить цвет или размер шрифта, расположение данных на экране, добавить ваше лого и т.д.;

- Значения переменных, которые Bginfo получает из операционной системы указаны в формате <Host name> ;
- Я сформировал следующий шаблон, который выводит базовую информацию о компьютере и добавил контакты тех поддержки:
HelpDesk Info:
Computer Name: <Host Name>
Domain: <Machine Domain>
Logon DC: <Logon Server>
OS Version: <OS Version>
User Name: <User Name>
IP Address: <IP Address>
Default Gateway: <Default Gateway>
MAC Address: <MAC Address>
System Info:
Boot Time: <Boot Time>
CPU: <CPU>
Memory: <Memory>
System Type: <System Type>
___________________________________
HelpDesk: +7 (495) 555-44-33
[email protected]
CRM Support: +7 (495) 222-44-11
[email protected]
- Сохраните данную конфигурацию в файл bg_config.bgi
Применить настройки Bginfo на компьютеры (сервера) домена через GPO
Теперь нужно создать групповую политику, которая будет применять конфигурационный файл Bginfo ко всем компьютерам и сервера домена.
Создайте на котроллере домена в каталоге SYSVOL папку Bginfo и скопируйте в него файлы bg_config.bgi и Bginfo.exe.
Создайте в этом же каталоге bat скрипт apply_bginfo.bat для применения настроек Bginfo к компьютеру:
reg add HKEY_CURRENT_USER\Software\Sysinternals\BGInfo /v EulaAccepted /t REG_DWORD /d 1 /f
%logonserver%\NETLOGON\Bginfo\Bginfo.exe %logonserver%\NETLOGON\Bginfo\bg_config.bgi /silent /TIMER:00 /nolicprompt

- Откройте редактор доменных GPO (gpmc.msc), создайте новую политику bgInfoGPO и назначьте ее на нужные OU;

- Перейдите в режим редактирования GPO;
- Перейдите в GPO раздел User Configuration -> Policies -> Windows Settings -> Scripts(Logon/Logoff) -> Logon -> Scripts -> Add и укажите UNC путь к вашему скрипту (например, \\resource.loc\NETLOGON\Bginfo\apply_bginfo.bat );
- Включите режим замыкания GPO, чтобы политика применялась для пользователей: Computer Configuration –> Administrative Templates -> System -> Group Policy -> Configure user Group Policy loopback processing mode = Enabled (Merge);

- Чтобы обновились политики, перезайдите на компьютер под пользователем и проверьте, что у него на рабочем столе теперь отображается системная информация, которую вы настроили.

Утилита BGInfo копирует фон рабочего стола в папку %Temp% пользователя в файл BGInfo.bmp и накладывает на него текст. Данный файл затем задается в качестве обоев рабочего стола. Однако, будьте внимательными, если вы задаете обои рабочего стола пользователям отдельной политикой. Политика с настройками Bginfo должна применяться после политики wallpaper. Измените порядок применения политик, если нужно.

Вывод дополнительных полей в Bginfo через WMI или VBS скрипты
Bginfo позволяет выводить не только предустановленные параметры, но и любые параметры компьютера, программ или AD с помощью WMI запросов или VBS скриптов.
Для добавления собственных значений в Bginfo нужно нажать на кнопку Custom -> New.

Утилита позволяет вывести:
В Bginfo даже есть встроенный WMI Explorer. Например, следующий WMI запрос позволит вывести на рабочий стол билд операционной системы (особо актуально для Windows 10):
SELECT BuildNumber FROM Win32_OperatingSystem

Следующий VBS скрипт позволяет вывести на рабочий стол информацию о модели компьютера:
winmgt = «winmgmts:
Set oWMI_Qeury_Result = GetObject(winmgt).InstancesOf(«Win32_ComputerSystem»)
For Each oItem In oWMI_Qeury_Result
Set oComputer = oItem
Next
If IsNull(oComputer.Model) Then
sComputerModel = «*no-name* model»
Else
If LCase(oComputer.Model) = «system product name» Then
sComputerModel = «Custom-built PC»
Else
sComputerModel = oComputer.Model
End If
End If
sComputer = Trim(sComputerModel)
Echo sComputer

Обратите внимание, что значение которое вы хотите увидеть в Bginfo скрипт vbs должен возвращать через Echo .
Таким образом, с помощью bginfo вы можете вывести на рабочий стол практически любую информацию с компьютера.
Предыдущая статья Следующая статья
Записки IT специалиста
Админу на заметку — 14. Как вывести информацию о системе на рабочий стол
- Автор: Уваров А.С.
- 12.03.2015
Любой администратор, которому приходится работать сразу с несколькими однотипными серверами знает сколько порою времени уходит на то, чтобы определить на каком именно из серверов он сейчас находится и какие у него базовые настройки. И вопрос это далеко не праздный, ошибочно выполненное не на том сервере действие может иметь самые разнообразные последствия, иной раз очень неприятные. В тоже время каждый, наверное, видел системы, где такая информация отображается прямо на рабочем столе. Сегодня мы расскажем, как это сделать.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
В этот раз, вопреки традиции, начнем с конца, с того результата, который вы должны получить.
![]()
Удобно? Безусловно. Беглого взгляда на рабочий стол достаточно, чтобы понять где вы находитесь, какие сетевые настройки этого хоста и его основные аппаратные характеристики.
Как это сделать? Совершенно несложно, достаточно воспользоваться утилитой BgInfo от Sysinternals. Эта небольшая программа от Марка Руссиновича считывает всю необходимую информацию и выводит ее прямо на обоях рабочего стола. Т.е. достаточно запустить ее один раз и вся необходимая информация будет у вас перед глазами пока вы не смените обои.
Но будет гораздо лучше, если данные будут с определенной периодичностью обновляться, тем более что утилита позволяет выводить некоторые текущие параметры, такие как свободное место на дисках.
Прежде всего скачаем утилиту и разместим ее в удобном месте, например, в папке профиля пользователя, если пользоваться ей планируете вы лично. При запуске, если не было выполнено никаких действий, то программа через 9 секунд закроется, сформировав новые обои рабочего стола в соответствии с настройками. А настроек довольно много:

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

Нажав кнопку Preview можно посмотреть, что у нас получилось вживую, а нажав Apply — применить настройки. Затем сохраним их в конфигурационный файл чтобы их можно было применять впоследствии, для этого выберите File — Save as. Файл настроек с расширением bgi сохраните в одном каталоге с утилитой.
Теперь подумаем, как оперативно обновлять информацию. Самый простой способ — добавить утилиту в автозагрузку. Для этого создайте в том же каталоге пакетный файл bginfо.bat со следующим содержимым:
Синтаксис записи прост, первым параметром передается файл конфигурации, в нашем случае interface31.bgi, затем опция timer, которая имеет значение 0, что позволяет утилите выполнять свою работу и не ожидать 9 секунд, опция NOLICPROMPT подавляет появление лицензионного соглашения. Полный список опций можно получить тут-же в разделе Help — Command line option:

Затем ярлык на данный пакетный файл следует поместить в автозагрузку, если вы хотите поместить туда не ярлык, а сам файл, то пути к утилите и файлу конфигурации потребуется изменить на абсолютные.
Однако автозагрузка — это не самый лучший вариант, сервера перезагружаются редко, поэтому самое время вспомнить о планировщике задач. Начиная с Windows Vista / Server 2008 это весьма гибкий и мощный инструмент, позволяющий решать самые разнообразные задачи.
Запустим планировщик и создадим простую задачу, рекомендуем давать задачам понятные имена и писать хотя бы пару строк в описание, чтобы потом вам и вашим коллегам было понятно, что делает та или иная задача.
![]()
Когда мы хотим обновлять информацию? Прежде всего при входе в систему, поэтому первый триггер выбираем именно таким, расписание добавим позже.
![]()
В качестве действия ставим запуск программы.
![]()
Проще всего, конечно, добавить в планировщик запуск уже созданного bat-файла, но этот метод имеет один существенный недостаток — на экране будет проскакивать окно командного интерпретатора, что весьма неудобно. К счастью, планировщик обладает широкими возможностями настройки запуска, чем мы и воспользуемся.
![]()
В поле Программа или сценарий добавляем саму утилиту bginfo.exe, аргументы и опции запуска добавляем в одноименное поле ниже, а именно строку:
Еще ниже обязательно задаем рабочую папку, это директория где физически располагается утилита и файл конфигурации к ней. На этом создание задачи заканчиваем и сразу переходим к ее свойствам, где на закладке Триггеры создаем еще один триггер.
![]()
Условия триггера просты: выполнять задачу ежедневно, каждый день, повторяя каждый час в течении бесконечного срока. Это условие, в сочетании с предыдущим триггером, будет обновлять информацию каждый час и при входе администратора в систему. Вы можете настроить условия согласно собственным предпочтениям.
После чего выбираем задачу и жмем кнопку Выполнить, чтобы проверить ее работу. Если все сделано правильно — информация на рабочем столе обновится.
![]()
Надеемся, что эта небольшая утилита позволит вам лучше организовать рабочее пространство и реже отвлекаться на мелочи, сосредоточив свое внимание на более важных задачах.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
BgInfo — IP адрес на рабочем столе

Программа Bginfo позволяет вывести характеристики компьютера (название компьютера в сети, объем ОЗУ, ip адрес и т.д.) на рабочий стол. Если у вас в сети много компьютеров, то, когда пользователь звонит по тому или иному вопросу, чтобы не идти к данному пользователю, проще выполнить первоначальные действия по устранению проблемы удаленно, а если удаленно не получилось, то идти в его кабинет. Но для удаленной работы необходимо знать IP адрес машины, на которой возникла проблема, а пользователю бывает сложно объяснить, где найти нужные цифры. По этому, в данном видео изучим программу BGInfo, которая выводит на рабочий стол информацию, которая может потребоваться системному администратору в ходе работы.
Скачать программу можно на сайте Microsoft либо просто ввести в поисковике BGinfo и перейти по ссылке Майкрософт\
Запускаем программу через Bginfo.exe и первым делом в правом верхнем углу отображается обратный отсчет, если никаких действий не будет произведено, то окно конфигурации пропадет, а на рабочем столе будут отображаться необходимые нам данные. Но в нашем случае сначала нужно программу настроить.
Как вы видите у нас отображается определенный код, данный код говорит о том, что отображать на рабочем столе и по умолчанию выводится вся информация доступная для данной программы. Нажимаем Apply (Применить) и видим все наши данные. Как вы видите, они располагаются исключительно на рабочем столе, а не в виде отдельного окна и это хорошо, так как не будет мешать пользователю работать.
Вообще, как работает программа, она берет текущее фоновое изображение рабочего стола, модернизирует его, как будто бы ставит печать с нужными нам данными, сохраняет в определенной папке и делает его текущим фоновым изображением.
Так как у меня в обоях присутствует белый цвет, то некоторые символы не видно, по этому давайте изменим цвет на черный (Выделяем весь код или отдельные элементы \ Format \ Color \ Черный). Но, так как у меня фон в программе черный, то код становится невидим, по этому, можно либо поменять обои на темные и вернуть белый цвет, либо сделать фоновую рамку для отображаемой информации (Background \ Make wallpaper visible behind text). Желательно сделать именно рамку, чтобы текст был читаемым в любом случае, однако пользователю это не понравится, мол не красиво, но тут уж вам решать.
Перейдем к коду, как вы видите, здесь мы можем ввести текст, после которого будет тег, вытаскивающий из системы необходимые данные. Данных много, но меня интересуют только Имя компьютера, IP Адрес, MAC Адрес, Объем ОЗУ, Имя пользователя. Редактируем визуальный вид.
Вроде бы на этом и все, но, данная программа срабатывает тогда, когда мы её запускаем, следовательно, если пользователь сменит обои, то нужная нам информация пропадет, по этому давайте пропишем программу в автозапуске для всех пользователей. Чтобы, даже в случае смены обоев, при перезагрузке данные снова появились.
1) Сохраняем текущие настройки в папке BGInfo в файл config.bgi
2) Копируем папку BGInfo в папку Program Files
3) Создадим скрипт запускающий данную программу:
«C:\Program Files\BGInfo\Bginfo» «C:\Program Files\BGInfo\config.bgi» /silent /timer:00 /nolicprompt
4) Копируем скрипт Bginfo.bat в папку автозапуска для всех пользователей:
XP — C:\Documents and Settings\All Users\Главное меню\Программы\Автозагрузка
Как узнать ip адрес компьютера в локальной сети через скрипт?
При администрировании локальной сети постоянно приходится сталкиваться с жалобами сотрудников на ошибки, проблемы и т.п. ситуациями, которые, как они думают, может исправить только «Великий Гуру компьютеров» (так сказать, «Привет работникам бухгалтерии»)
Однако практически всегда сообщая о проблеме, пользователь не знает ничего о своём компьютере: ни имя ПК, ни его ip адрес в локальной сети, ни других данных, по которым можно было бы отследить или найти его (наиболее актуально для многоуровневых локальных сетей).
Как узнать имя и ip адрес компьютера с помощью скрипта?
В одной из статей сайта рассказано, как узнать ip через командную строку, однако далеко не все пользователи способны «сладить» с мистической командой cmd.
Итак, для своих сотрудников я ввел обязательство: прежде чем звонить и сообщать о какой-либо ошибке – запускать файл, в основе которого заложен скрипт:
/
strComputer = “.”
Set SWBemlocator = CreateObject(“WbemScripting.SWbemLocator”)
Set objWMIService = SWBemlocator.ConnectServer(strComputer,”root\CIMV2″)
Set colItems = objWMIService.ExecQuery(“Select * from Win32_NetworkAdapterConfiguration where ipenabled = true”,,48)
For Each objItem in colItems
MsgBox “Вот что нужно знать перед звонком в IT”, vbInformation, “Заголовок окна”
Text = “Имя компьютера: ” & objItem.DNSHostName & VbCrLf – «команда для определения рабочего имени компьютера»
for each propValue in objItem.IPAddress
Text = Text & “IP адрес: ” & propValue & VbCrLf «определение ip адреса»
Text= Text & “id 12345678″& VbCrLf – «строки для ручного ввода данных для входа в программу для удалённого управления компьютером (например, на данной иллюстрации – это TeamViewer)»

Text= Text & “password 12345678”-
Next
Next
WScript.Echo Text
\
Данный скрипт помогает узнать имя и ip адрес своего компьютера даже совсем «далеким» от грамотного общения с ПК пользователям.
Как вывести на рабочий стол имя компьютера и его ip адрес?
Чтобы вывести ip адрес на рабочий стол останется только открыть любой текстовый редактор и сохранить данный скрипт с английской раскладкой и разрешением «.vbs».
Теперь, при запуске данной мини-программы откроется окно, в котором сотрудник будет видеть:
- – имя компьютера;
- – ip адрес компьютера в локальной сети;
- – id для входа в программу удалённого доступа;
- – пароль для входа.

Кроме того, на правах администратора можно добавить утилиту в «Планировщик задач» и поставить повтор на запуск (например, каждые 3-4 часа) и, возможно, со временем сотрудники будут знать столь данные наизусть.