Журнал блокировки экрана windows

When either a user manually locks his workstation or the workstation automatically locks its console after a period of inactivity this event is logged.

To find out when the user returned and unlocked the workstation look for event ID 4801.

If a screen saver is used, there is a relationship between this event and 4802/4803  See event ID 4802 for an explanation of the sequence of events.


Description Fields in
4800

Subject:

The user and logon session involved.

  • Security ID:  The SID of the account.
  • Account Name: The account logon name.
  • Account Domain: The domain or — in the case of local accounts — computer name.
  • Logon ID is a semi-unique (unique between reboots) number that identifies the logon session.  Logon ID allows you to correlate backwards to the logon event (4624) as well as with other events logged during the same logon session.

Stay up-to-date on the Latest in Cybersecurity

Sign up for the Ultimate IT Security newsletter
to hear about the latest webinars, patches, CVEs, attacks, and more.

    unit UWinWlx;

    interface

    uses Windows;

    /////////////////////////////////////////////////////////////////////////

    //    WLX == WinLogon eXtension

    //

    //    This file contains definitions, data types, and routine prototypes

    //    necessary to produce a DLL for Winlogon.

    /////////////////////////////////////////////////////////////////////////

    //

    // Non-GINA notification DLLs

    //

    type

      PWSTR = Windows.LPWSTR;

      PFNMSGECALLBACK = function (bVerbose: BOOL; lpMessage: LPWSTR): DWORD; stdcall;

      {$EXTERNALSYM PFNMSGECALLBACK}

      TFnMsgeCallback = PFNMSGECALLBACK;

      PWLX_NOTIFICATION_INFO = ^WLX_NOTIFICATION_INFO;

      {$EXTERNALSYM PWLX_NOTIFICATION_INFO}

      _WLX_NOTIFICATION_INFO = record

        Size: Windows.ULONG;

        Flags: Windows.ULONG;

        UserName: Windows.LPWSTR;

        Domain: Windows.LPWSTR;

        WindowStation: Windows.LPWSTR;

        hToken: Windows.THANDLE;

        hDesktop: Windows.HDESK;

        pStatusCallback: PFNMSGECALLBACK;

      end;

      {$EXTERNALSYM _WLX_NOTIFICATION_INFO}

      WLX_NOTIFICATION_INFO = _WLX_NOTIFICATION_INFO;

      {$EXTERNALSYM WLX_NOTIFICATION_INFO}

      TWlxNotificationInfo = WLX_NOTIFICATION_INFO;

      PWlxNotificationInfo = PWLX_NOTIFICATION_INFO;

      // Event Handler Function Prototype

      WLEvtHandler_Function = procedure(pInfo: PWLX_NOTIFICATION_INFO); stdcall;

    //

    // notifications

    //

    procedure WLN_Lock (pInfo: PWLX_NOTIFICATION_INFO); stdcall; forward;

    procedure WLN_Unlock (pInfo: PWLX_NOTIFICATION_INFO); stdcall; forward;

    //

    // install procedure

    //

    procedure InstallNotify; stdcall; forward;

    implementation

    uses SysUtils, Registry;

    const

       RegRoot  = HKEY_LOCAL_MACHINE;

       RegPath  = ‘\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify’;

       RegName  = ‘LQS_WLN’;

       defName  = ‘wl_ntfy.dll’;

    procedure InstallNotify;

    var xReg: TRegistry;

    begin

      //

      xReg := TRegistry.Create;

      try

        xReg.RootKey := RegRoot;

        xReg.Access  := KEY_ALL_ACCESS;

        if xReg.OpenKey(RegPath,True) then

          if xReg.OpenKey(RegName,True) then

          begin

            xReg.WriteInteger(‘Asynchronous’,0);

            xReg.WriteExpandString(‘DLLName’,defName);

            xReg.WriteInteger(‘Impersonate’,0);

            xReg.WriteString(‘Lock’,’WLN_Lock’);

            xReg.WriteString(‘Unlock’,’WLN_Unlock’);

            MessageBox(0, ‘Installed: [OK]’, », MB_OK + MB_ICONINFORMATION + MB_TASKMODAL);

          end;

      finally

        xReg.CloseKey;

        xReg.Free;

      end;

    end;

    procedure WLN_Lock;

    begin

      PostMessage(HWND_BROADCAST,WM_USER + 100,0,0);

    end;

    procedure WLN_Unlock;

    begin

      PostMessage(HWND_BROADCAST,WM_USER + 101,0,0);

    end;

    initialization

    finalization

    end.

Время на прочтение5 мин

Количество просмотров79K

Пользовательская рабочая станция — самое уязвимое место инфраструктуры по части информационной безопасности. Пользователям может прийти на рабочую почту письмо вроде бы из безопасного источника, но со ссылкой на заражённый сайт. Возможно, кто-то скачает полезную для работы утилиту из неизвестно какого места. Да можно придумать не один десяток кейсов, как через пользователей вредоносное ПО может внедриться на внутрикорпоративные ресурсы. Поэтому рабочие станции требуют повышенного внимания, и в статье мы расскажем, откуда и какие события брать для отслеживания атак.

Для выявления атаки на самой ранней стадии в ОС Windows есть три полезных событийных источника: журнал событий безопасности, журнал системного мониторинга и журналы Power Shell.

Журнал событий безопасности (Security Log)

Это главное место хранения системных логов безопасности. Сюда складываются события входа/выхода пользователей, доступа к объектам, изменения политик и других активностей, связанных с безопасностью. Разумеется, если настроена соответствующая политика.

Перебор пользователей и групп (события 4798 и 4799). Вредоносное ПО в самом начале атаки часто перебирает локальные учетные записи пользователей и локальные группы на рабочей станции, чтобы найти учетные данные для своих тёмных делишек. Эти события помогут обнаружить вредоносный код раньше, чем он двинется дальше и, используя собранные данные, распространится на другие системы.

Создание локальной учётной записи и изменения в локальных группах (события 4720, 4722–4726, 4738, 4740, 4767, 4780, 4781, 4794, 5376 и 5377). Атака может также начинаться, например, с добавления нового пользователя в группу локальных администраторов.

Попытки входа с локальной учётной записью (событие 4624). Добропорядочные пользователи заходят с доменной учётной записью и выявление входа под локальной учётной записью может означать начало атаки. Событие 4624 включает также входы под доменной учетной записью, поэтому при обработке событий нужно зафильтровать события, в которых домен отличается от имени рабочей станции.

Попытка входа с заданной учётной записью (событие 4648). Такое бывает, когда процесс выполняется в режиме “Запуск от имени” (run as). В нормальном режиме работы систем такого не должно быть, поэтому такие события должны находиться под контролем.

Блокировка/разблокировка рабочей станции (события 4800-4803). К категории подозрительных событий можно отнести любые действия, которые происходили на заблокированной рабочей станции.

Изменения конфигурации файрволла (события 4944-4958). Очевидно, что при установке нового ПО настройки конфигурации файрволла могут меняться, что вызовет ложные срабатывания. Контролировать такие изменения в большинстве случаев нет необходимости, но знать о них точно лишним не будет.

Подключение устройств Plug’n’play (событие 6416 и только для WIndows 10). За этим важно следить, если пользователи обычно не подключают новые устройства к рабочей станции, а тут вдруг раз — и подключили.

Windows включает в себя 9 категорий аудита и 50 субкатегорий для тонкой настройки. Минимальный набор субкатегорий, который стоит включить в настройках:

Logon/Logoff

  • Logon;
  • Logoff;
  • Account Lockout;
  • Other Logon/Logoff Events.

Account Management

  • User Account Management;
  • Security Group Management.

Policy Change

  • Audit Policy Change;
  • Authentication Policy Change;
  • Authorization Policy Change.

Системный монитор (Sysmon)

Sysmon — встроенная в Windows утилита, которая умеет записывать события в системный журнал. Обычно требуется его устанавливать отдельно.

Эти же события можно в принципе найти в журнале безопасности (включив нужную политику аудита), но Sysmon даёт больше подробностей. Какие события можно забирать из Sysmon?

Создание процесса (ID события 1). Системный журнал событий безопасности тоже может сказать, когда запустился какой-нибудь *.exe и даже покажет его имя и путь запуска. Но в отличие от Sysmon не сможет показать хэш приложения. Злонамеренное ПО может называться даже безобидным notepad.exe, но именно хэш выведет его на чистую воду.

Сетевые подключения (ID события 3). Очевидно, что сетевых подключений много, и за всеми не уследить. Но важно учитывать, что Sysmon в отличие от того же Security Log умеет привязать сетевое подключение к полям ProcessID и ProcessGUID, показывает порт и IP-адреса источника и приёмника.

Изменения в системном реестре (ID события 12-14). Самый простой способ добавить себя в автозапуск — прописаться в реестре. Security Log это умеет, но Sysmon показывает, кто внёс изменения, когда, откуда, process ID и предыдущее значение ключа.

Создание файла (ID события 11). Sysmon, в отличие от Security Log, покажет не только расположение файла, но и его имя. Понятно, что за всем не уследишь, но можно же проводить аудит определённых директорий.

А теперь то, чего в политиках Security Log нет, но есть в Sysmon:

Изменение времени создания файла (ID события 2). Некоторое вредоносное ПО может подменять дату создания файла для его скрытия из отчётов с недавно созданными файлами.

Загрузка драйверов и динамических библиотек (ID событий 6-7). Отслеживание загрузки в память DLL и драйверов устройств, проверка цифровой подписи и её валидности.

Создание потока в выполняющемся процессе (ID события 8). Один из видов атаки, за которым тоже нужно следить.

События RawAccessRead (ID события 9). Операции чтения с диска при помощи “\\.\”. В абсолютном большинстве случаев такая активность должна считаться ненормальной.

Создание именованного файлового потока (ID события 15). Событие регистрируется, когда создается именованный файловый поток, который генерирует события с хэшем содержимого файла.

Создание named pipe и подключения (ID события 17-18). Отслеживание вредоносного кода, который коммуницирует с другими компонентами через named pipe.

Активность по WMI (ID события 19). Регистрация событий, которые генерируются при обращении к системе по протоколу WMI.

Для защиты самого Sysmon нужно отслеживать события с ID 4 (остановка и запуск Sysmon) и ID 16 (изменение конфигурации Sysmon).

Журналы Power Shell

Power Shell — мощный инструмент управления Windows-инфраструктурой, поэтому велики шансы, что атакующий выберет именно его. Для получения данных о событиях Power Shell можно использовать два источника: Windows PowerShell log и Microsoft-WindowsPowerShell / Operational log.

Windows PowerShell log

Загружен поставщик данных (ID события 600). Поставщики PowerShell — это программы, которые служат источником данных для PowerShell для просмотра и управления ими. Например, встроенными поставщиками могут быть переменные среды Windows или системный реестр. За появлением новых поставщиков нужно следить, чтобы вовремя выявить злонамеренную активность. Например, если видите, что среди поставщиков появился WSMan, значит был начат удаленный сеанс PowerShell.

Microsoft-WindowsPowerShell / Operational log (или MicrosoftWindows-PowerShellCore / Operational в PowerShell 6)

Журналирование модулей (ID события 4103). В событиях хранится информация о каждой выполненной команде и параметрах, с которыми она вызывалась.

Журналирование блокировки скриптов (ID события 4104). Журналирование блокировки скриптов показывает каждый выполненный блок кода PowerShell. Даже если злоумышленник попытается скрыть команду, этот тип события покажет фактически выполненную команду PowerShell. Ещё в этом типе события могут фиксироваться некоторые выполняемые низкоуровневые вызовы API, эти события обычно записывается как Verbose, но если подозрительная команда или сценарий используются в блоке кода, он будет зарегистрирован как c критичностью Warning.

Обратите внимание, что после настройки инструмента сбора и анализа этих событий потребуется дополнительное время на отладку для снижения количества ложных срабатываний.

Расскажите в комментариях, какие собираете логи для аудита информационной безопасности и какие инструменты для этого используете. Одно из наших направлений — решения для аудита событий информационной безопасности. Для решения задачи сбора и анализа логов можем предложить присмотреться к Quest InTrust, который умеет сжимать хранящиеся данные с коэффициентом 20:1, а один его установленный экземпляр способен обрабатывать до 60000 событий в секунду из 10000 источников.

Как узнать, когда компьютер включали и выключали, какие программы запускали и какие файлы открывали.

Как узнать

Какие программы

История браузера

Удаленные файлы и корзина

Как узнать

Какие программы

История браузера

Удаленные файлы и корзина

Если у вас есть подозрения, что кто-то пользовался вашим компьютером втайне от вас, то это можно легко проверить. Это может понадобиться как дома, так и на работе. Существует несколько способов проверить, когда включался компьютер, в том числе с помощью сторонних программ.

Фото: Depositphotos

Фото: Depositphotos

Как узнать, когда включали и выключали компьютер

Проще всего воспользоваться встроенным приложением «Просмотр событий». Зайдите в поиск через меню «Пуск» и наберите название программы. Если так найти не получилось, то кликните правой кнопкой мыши по ярлыку «Этот компьютер» и выберите «Управление». Далее, в левой части экрана выберите «Просмотр событий».

Ищите папку «Журналы Windows» на левой панели. Затем выберите пункт «Система».

Теперь нужно оставить только те события, которые нас интересуют. Для этого кликните правой кнопкой мыши на пункте «Система» и выберите «Фильтр текущего журнала» или же найдите фильтр на панели в правой части окна программы.

В окне фильтра нужно совершить всего одно действие. В поле «Источники событий» найдите пункт Winlogon. Поставьте галочку и подтвердите свой выбор.

В журнале останутся только записи о входе и выходе из системы. На основании этого уже можно понять, когда компьютер включали и выключали. Если запись показывает время, когда вы не пользовались компьютером, значит, это сделал кто-то другой.

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

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

В качестве альтернативы можно использовать стороннюю программу. Это проще и не придется заходить в системные настройки системы. Скачайте бесплатную программу TurnedOnTimesView. У нее есть русскоязычный интерфейс, но его нужно устанавливать отдельно. Файл локализации нужно скинуть в папку с программой.

Первая колонка показывает время включения, вторая — выключения.

Первая колонка показывает время включения, вторая — выключения.

Как узнать, какие программы и файлы открывались

Через события Windows можно увидеть и другие действия пользователя. Однако представлены они в неудобном виде: кроме пользовательских программ отображаются еще и многочисленные системные процессы. Некоторую информацию можно посмотреть в реестре системы, куда мы не рекомендуем заходить неопытным пользователям. Поэтому гораздо проще использовать сторонние программы.

Работа с программами предельно проста. Откройте архив и запустите исполняемый файл (с расширением .exe).

Работа с программами предельно проста. Откройте архив и запустите исполняемый файл (с расширением .exe).

Будем использовать программы LastActivityView и ExecutedProgramsList. Они берут данные из уже упомянутого реестра и журнала Windows, поэтому сразу покажут всю картину. А не только то, что было сделано после установки.

Благодаря иконкам сразу можно понять, что недавно открывался архиватор.

Благодаря иконкам сразу можно понять, что недавно открывался архиватор.

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

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

Проверить историю браузера

Историю браузера легко почистить, поэтому вряд ли кто-то будет оставлять такие очевидные улики. Кроме того, в режиме инкогнито история тоже не сохраняется. Но если «нарушитель» плохо разбирается в компьютерах, то вероятность найти запросы все же есть.

Кроме того, даже если кто-то и почистил историю, он вполне мог стереть заодно и ваши запросы. Обращайте на это внимание.

Удаленные файлы и корзина

Еще один маловероятный вариант. После удаления файлов корзину, скорее всего, почистят. Учитывая, что удалять можно отдельные файлы, при этом ваши останутся висеть в корзине, заметить такие действия нельзя. Можно попробовать воспользоваться программами для восстановления данных, например Recuva. Она найдет удаленные файлы, и вы сможете увидеть, что именно удаляли без вашего ведома.

19 / 19 / 10

Регистрация: 09.01.2013

Сообщений: 437

Отображение данных на экране блокировки и авторизации

22.03.2024, 15:14. Показов 2898. Ответов 14


Доброго времени.
компьютеры находятся в домене.
уже вывел на рабочий стол необходимую инфу с помощью deskopinfo

Можете подсказать, как вывести информацию:
1. до авторизации пользователя на экран приветствия или авторизации.
2. после авторизации на экран блокировки…

чтот нигде не нахожу этой инфы, как сие организовать.



1



461 / 461 / 6

Регистрация: 08.05.2013

Сообщений: 242

29.03.2024, 10:15

Подскажите, пожалуйста, как вывели на рабочий стол инфу?
Это картинка у всех одинаковая или какая-то дополнительная информация появляется?
Пробовал, не получилось установить всем одинаковую картинку (обои).

Добавлено через 1 час 13 минут
Картинку установил, работает. Указал другой путь.
Остальное посмотрим.



0



19 / 19 / 10

Регистрация: 09.01.2013

Сообщений: 437

01.04.2024, 03:59

 [ТС]

Сообщение от Alexander519151

Подскажите, пожалуйста, как вывели на рабочий стол инфу?

качал тут

конфиг открывается просто блокнотом, редактируется как угодно, там шаблонов тьма.

Сообщение от Alexander519151

Пробовал, не получилось установить всем одинаковую картинку (обои).

я путь к картинке указал через sysvol — так работает одна картинка на всех сразу компах.



1



5642 / 4485 / 1088

Регистрация: 29.08.2013

Сообщений: 27,974

Записей в блоге: 3

02.04.2024, 08:24

Серый_Ветер, а чем Bginfo не устроил?



0



19 / 19 / 10

Регистрация: 09.01.2013

Сообщений: 437

02.04.2024, 10:59

 [ТС]

Сообщение от qwertehok

Серый_Ветер, а чем Bginfo не устроил?

через AD он не хотел работать. локально — без проблем, но ставить его на 400 машин — я рехнусь.

Добавлено через 1 минуту

Сообщение от qwertehok

а чем Bginfo

и мне не надо выводить инфу на рабочий стол, это я решил.

мне нужно выводить инфу на экран приветствия/блокировки/авторизации



0



5642 / 4485 / 1088

Регистрация: 29.08.2013

Сообщений: 27,974

Записей в блоге: 3

02.04.2024, 12:15

Сообщение от Серый_Ветер

мне нужно выводить инфу на экран приветствия/блокировки/авторизации

и получилось?
оно же называется «Desktop Info Gallery»

или это как то в настройках задается?



0



19 / 19 / 10

Регистрация: 09.01.2013

Сообщений: 437

02.04.2024, 12:23

 [ТС]

Сообщение от qwertehok

и получилось?

пока нет.

Сообщение от qwertehok

оно же называется «Desktop Info Gallery»

изначальное сообщение:

компьютеры находятся в домене.
уже вывел на рабочий стол необходимую инфу с помощью deskopinfo

Можете подсказать, как вывести информацию:
1. до авторизации пользователя на экран приветствия или авторизации.
2. после авторизации на экран блокировки…

то есть этот пункт я выполнил, проблем не составило.
сейчас ищу как следующий пункт выводить.

по посту выводить можно, но все нужно вручную вбивать, автоматизировать не получается пока. и от AD не зависит, все локально нужно(((



0



19 / 19 / 10

Регистрация: 09.01.2013

Сообщений: 437

08.04.2024, 14:21

 [ТС]

нашел вот такой проект.
но он у меня чего-то не пошел, откатываться пришлось даже.

причем даже в readme написано что работает в GPO:

o ensure the script is run as admin on bootup we will need to create or amend a Group Policy Object (GPO) targeting the computer:

Go to Computer Configuration -> Policies -> Windows Settings -> Scripts (Logon/Logoff) -> Logon, and then click on the PowerShell Scripts tab, press Add, and for the script name type in the full path you stored the Update Wallpapers script (i.e. \\FQDN\netlogon\Boot Info.ps1).

но чего-то у меня не завелось…



0



19 / 19 / 10

Регистрация: 09.01.2013

Сообщений: 437

08.04.2024, 14:22

 [ТС]

либо я не правильно что-то сделал, либо не так что-то понял))



0



6375 / 2200 / 342

Регистрация: 10.12.2013

Сообщений: 7,557

08.04.2024, 17:28

To set the execution policy, you can use a Group Policy Object (GPO). In Group Policy Management Console (GPMC), navigate to:

Computer Configuration -> Policies -> Administrative Templates -> Windows Components -> Windows PowerShell.
Look for the setting: Turn on Script Execution.
Set it to Enabled and select the appropriate execution policy (e.g., «Allow all scripts»). This GPO will override the local execution policy. When you’re running scripts via Group Policy, it’s common to use a login script or a startup script. Ensure that the script is being run in the context of the system account.

For login scripts:

User Configuration -> Policies -> Windows Settings -> Scripts (Logon/Logoff).
For startup scripts:

Computer Configuration -> Policies -> Windows Settings -> Scripts (Startup/Shutdown).

Добавлено через 1 минуту
PS: You can verify that the user logon script was executed successfully by the Event ID 5018 under Microsoft-Windows-GroupPolicy/Operational section of Event Viewer.



0



19 / 19 / 10

Регистрация: 09.01.2013

Сообщений: 437

18.04.2024, 14:05

 [ТС]

либо лыжи не едут….

в настройках ГПО включил запуск любых скриптов.
скрипт положил в NETLOGON

указал его в скриптах на автологон.
и ничего не отображает.

Добавлено через 8 минут
и так:
раздел boot Info

Edit the section after ‘$TextLabel = «‘ to change the text which is saved on the wallpaper. Rename Establishment in the script to the actual Establishment Name/Address.

пока текст оставил без изменений.

Note: This script has an option to set one specific image as the boot background rather than selecting a random one from the folders, just name the file Override.jpg in the Establishment\Wallpaper folder on the local machine. This script also creates the registry key HKLM:\Software\MachineData and provides Authenticated Users write access so the most accurate screen resolution data can be stored on logon for use on bootup. More details in the code.

When running the script as an Administrator, you should find this will grab a random file from the correct screen ratio folder (or nearest, if you have a non-standard/old widescreen) generate the text to overlay (so in this case Establishment, Telephone Number and Computer Name in the top centre, and the Boot Time in the bottom left) and save the file to C:\Windows\System32\oobe\info\background s\backgroundDefault.jpg.

то есть сначала надо вручную на каждой машине этот скрипт запустить? чтобы он создал ветку реестра, записал в нее даные, тока потом GPO запустить?

эти пункты я делал:

To ensure the script is run as admin on bootup we will need to create or amend a Group Policy Object (GPO) targeting the computer:

Go to Computer Configuration -> Policies -> Windows Settings -> Scripts (Logon/Logoff) -> Logon, and then click on the PowerShell Scripts tab, press Add, and for the script name type in the full path you stored the Update Wallpapers script (i.e. \\FQDN\netlogon\Boot Info.ps1).

Go to Computer Configuration -> Policies -> Administrative Templates -> Control Panel -> Personalization -> Force a specific default lock screen and logon image, and enable the policy, specifying the location as:

C:\Windows\System32\oobe\info\background s\backgroundDefault.jpg

только вместо C:\Windows\System32\oobe\info\background s\backgroundDefault.jpg указал свое корпоративное изображение лежащее в \\FQDN\netlogon\image\desktoplogo.jpg



0



19 / 19 / 10

Регистрация: 09.01.2013

Сообщений: 437

16.03.2025, 15:25

 [ТС]

В общем разобрался)

Readme надо читать на родном языке, а не перевод.
Всё работает и с доменной политикой.
Немного не то правил, как прочёл полностью, осознал что и как.
Подправил под свои нужды, работает без нареканий.

Единственное, можете подсказать, как вывести через power she’ll только один адрес по маске 10.20.*
А то есть компьютеры где много адресов, а интересует только один.

p. s. Скрипт не работает там, где два монитора подключены с разным разрешением. Падает на вычислении пикселей по вертикали/горизонтали.



0



Модератор

5832 / 2721 / 193

Регистрация: 27.06.2011

Сообщений: 11,032

17.03.2025, 10:26

Сообщение от Серый_Ветер

В общем разобрался)

Примите поздравление, можете подробно описать как решили подобную проблему и с итоговыми скриншотами (просто любопытно посмотреть) Так и инструкция пригодится другим участникам форума и желательно указать на моменты в которых Вы ошиблись, чтобы не повторить их.



0



Серый_Ветер

19 / 19 / 10

Регистрация: 09.01.2013

Сообщений: 437

20.03.2025, 11:30

 [ТС]

Сообщение было отмечено HotBeer как решение

Решение

Сообщение от HotBeer

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

1. корпоративное лого указывать надо в теле самого скрипта.
параметр:

Code
1
2
3
# Wallpaper source folder.
#$LocalSource = "$Env:ProgramFiles\Establishment\Wallpaper"
$LocalSource = "$Env:\\klg\SYSVOL\scripts\Wall

затем в этой директории создать 2 папки 16×9 и 3х4 и положить туда свои фотографии с нужным разрешением.

а в групповых политиках надо указать именно то, что указано в readme

Code
1
C:\Windows\System32\oobe\info\backgrounds\backgroundDefault.jpg

2. за прозрачность текста/текстбокса отвечают:

# Set the ARGB values required for the text and text box.
$TextARGB = [System.Drawing.Color]::FromArgb(255,$TextRed,$TextGreen,$TextBlue)
$BoxARGB = [System.Drawing.Color]::FromArgb(255,$BoxRed,$BoxGreen,$BoxBlue)

0 прозрачен 100%
255 не прозрачен вообще

3. за расположение по лево/право

# Set alignment format for the font.
$FormatFont = [System.Drawing.StringFormat]::GenericDefault
$FormatFont.Alignment = [System.Drawing.StringAlignment]::Center
$FormatFont.LineAlignment = [System.Drawing.StringAlignment]::Near

Far — Справа
Near — Слева
Center — по центру

еще игрался с параметрами:

If ($Horizontal -eq $null) {$Horizontal = [int]»1024″}
If ($Vertical -eq $null) {$Vertical = [int]»768″}

но не понял, или просто изображение не затерлось или просто не работает то что я писал, как было 1024*768 так и осталось.

Добавлено через 1 минуту

Сообщение от HotBeer

итоговыми скриншотами (просто любопытно посмотреть)

только в пятницу выложу.
сейчас в командировке.



1



Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Если для каталогов данных службы windows search заданы неправильные разрешения
  • Дисковая утилита windows как открыть
  • Назначение командной строки windows
  • Расположение skype в windows 10
  • Установщик windows 10 32 бит