Windows 11, 10, etc - Вадим Стеркин
15.4K subscribers
285 photos
6 videos
8 files
1.14K links
Авторский канал. Windows, безопасность, мобильный мир:
• тайное знание
• мощный ликбез
• гадание по логам
• срыв покровов
• доставка пруфов

Чат: @winsiders
Блог: outsidethebox.ms
ЛС: @vsterkin
Донаты ₽: boosty.to/sterkin
РКН: https://clck.ru/3LBugC
Download Telegram
🤦‍♂️ О фиаско CrowdStrike

Пока российские айтишники закидывались попкорном под видосики коллапса в аэропортах и офисах по всему миру, я помогал коллегам вернуть их системы к жизни 😎 У одного из наших клиентов CrowdStrike Falcon Sensor развернут на всех Windows. Виртуальные десктопы в облачной инфраструктуре стали головной болью техподдержки клиента. Но часть команды сидит по схеме BYOD под управлением Intune на локальных ВМ Hyper-V. И это уже наша сфера ответственности.

Вообще, сломались не все системы. Мой облачный десктоп Windows 365 и локальная ВМ поднялись после одной перезагрузки. Другим повезло меньше. Однако процедура восстановления несложная, и большинство коллег легко справились с ней, следуя моим инструкциям. К счастью, они не впадают в ступор от вида командной строки 🙏

Впрочем, всплыла пара интересных нюансов, которые скорее всего были следствием применения к нашим ВМ политик Intune. Причем неравномерного, что затрудняло диагностику.

🔐 Часть ВМ была зашифрована BitLocker. Я ранее инструктировал команду забэкапить 48-значный пароль восстановления, но сделали это примерно 0,5 человека ;) Этот пароль можно посмотреть в корпоративном личном кабинете. Однако туда нужно входить с авторизованного устройства, у которого... BSOD :)

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

Про креативный способ входа в безопасный режим в обход BitLocker я узнал позже.

🔁 На некоторых ВМ при входе среду восстановления не обнаруживалось локальных администраторов. Это легко обходилась загрузкой в среду восстановления с ISO. Но поведение было странным. Тем более что постфактум whoami /groups показывала принадлежность пользователя к группе администраторов.

По тексту ошибки нагулилась KB2957212 времен Windows 8.1. Там это поведение списывали как раз на политики и предлагали хотфикс. Возможно, в дальнейшем он так и не вошел в код ОС.

////

⁉️ CrowdStrike клянётся рассказать в своем блоге всю правду по итогам расследования. Но первая часть (недоступно с российских провайдеров) не содержит ответа на вопрос, которым многие задаются. Как такой дефект мог проскочить в прод, минуя автотесты? А точнее - это у них обычное дело или неудачное стечение обстоятельств выявило неочевидный изъян в процессах?

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

🛡 Семь лет назад я рассказывал про облачный компонент защитника Windows. Там антивирус заблокировал подозрительный файл, отправил его на анализ в облако и в ответ получил вердикт "малварь" и новые сигнатуры. Прошло всего 8 секунд! Никакие автотесты вы за это время не проведете.

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

Но в антивирусной защите счет действительно идет на минуты и секунды. Поэтому с обывательскими представлениями о тестировании вряд ли стоит сюда подходить. Да и не все можно решить тестами. В идеале у программного обеспечения должны быть архитектурно какие-то предохранители, чтобы такая ситуация не возникала ✌️
👍100🤔33🔥15😢9🤬7😁5👎4🤯3🗿32👏2
🖥 Про обманчивость внешнего вида интерфейсов

На фоне фиаско CrowdStrike сайты и паблики ИТ-тематики пошли вразнос в погоне за хайпом. Например, только ленивый не скопировал новость, что Microsoft для решения проблемы рекомендует 15 перезагрузок. Такую рекомендацию компания не публиковала, хотя формулировка была неудачной.

А как только схлынула первая волна новостей, эти же ресурсы быстро перешли к петросянству 🤦‍♂️ В наш чат вбросили новость, которая была на Yahoo, HN, Tom's Hardware, XDA Dev и в рунете, конечно.

Якобы американская авиакомпания SouthWest Airlines избежала коллапса, потому что до сих пор использует Windows 3.1 🛫

Основанием для статьи послужила чья-то шутка в Твиттере. Доказательством использования Windows 3.1 стала ссылка на позапрошлогоднюю статью. В ней чиновник из профсоюза пилотов утверждал, что некоторые системы авиакомпании выглядят настолько старыми, будто они были созданы во времена Windows 95.

Эти слова всколыхнули у меня воспоминания...

⌛️ В 2000-х я работал в США в управлении медицинской информацией одной здравоохранительной системы. Там было приложение для работы с базой данных пациентов - персональная информация, даты визитов, лечащие врачи. Без медицинских карт.

Это был терминал типа IBM 3270 (точнее его эмулятор) - как в старые добрые времена! С навигацией F-клавишами. Этих горячих клавиш было больше 12, конечно, что неизменно вводило в ступор новичков. На картинке другой, но очень похожий.

Терминал был очень быстрый. А при использовании горячих клавиш - космически быстрый 🚀

Более современная система с примерно той же информацией и медицинскими картами впридачу обладала красивым GUI. Но она и рядом не стояла по скорости работы 📉 А это критически важно, когда нужно срочно найти пациента по звонку с неполной информацией - имя-фамилия, пожилой, вроде был у вас. При таком раскладе в GUI даже не совались.

Но какой-нибудь клоун посмотрел бы на экран и сказал: ахаха у них DOS!

////

Этот рассказ изначально был моим комментарием к набросу в чате. И сразу несколько человек сказали, что хотели бы видеть такие байки в этом канале. Ваши реакции помогут мне определиться, стоит ли продолжать. Впрочем, я и раньше изредка подкидывал нечто подобное ✌️
👍344🔥45👎19🤬15😱14🤔12👀4👌21👏1🗿1
👍59🤷‍♂37👎14🤔13😁7🤯6😱5😢42🤡21
⚙️ Как переименовать папку профиля

Недавно в чате обсуждали эту исторически болезненную тему. Приступы боли вероятнее при установке Windows с учетной записью Microsoft (MSA). В этом случае в качестве имени папки профиля берется первые 5-6 символов адреса электронной почты 🤷‍♂️

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

⌛️ Во времена Windows 7 я рекомендовал простое средство переноса данных, но так создавалась новая учетная запись. Кажется, у Microsoft никогда и не было явно поддерживаемого способа для переименования папки профиля. Потому что программы могут записывать в реестр абсолютные пути и потом работать некорректно с новым именем папки.

👌 Косвенно операция поддерживалась способом из KB2454362 - наряду с именем папки нужно изменить значение ProfileImagePath в реестре. Статья опять же времен Windows 7, но технически здесь вряд ли что-то изменилось.

Для переименования папки там подразумевается наличие еще одного администратора. Но без него можно обойтись, действуя в среде восстановления.

💡 В чате Niks предложил альтернативный и весьма креативный способ, который вас не устроит. Зато вы сможете выручить тех, кто не пользуется командной строкой и альтернативными файловыми менеджерами.

Можно задать желаемое имя папки в файле desktop.ini! Впрочем, здесь тоже есть подводные камни.

1️⃣ Создайте в корне профиля (папка %userprofile%) файл desktop.ini с таким содержимым:

[.ShellClassInfo]
LocalizedResourceName=МоеИмяПапки


2️⃣ В командной строке выполните
attrib +s +h %userprofile%\desktop.ini

3️⃣ Щелкните папку профиля правой кнопкой мыши, на последней вкладке (Настройка) задайте любой значок и примените изменения. Затем там же восстановите дефолтный значок. Иначе у этой папки имя не поменяется 🙄

////

✔️ Резюме
Лучше не доводить до нежелательного имени папки профиля. Я пользуюсь MSA, но всегда ставлю ОС с локальным аккаунтом, чтобы контролировать имя папки ✌️
👍70👎31😱29😢29🤔28🤯28🤬27🔥151
🔐 В Windows 11 24H2 шифрование BitLocker можно легко включить и в домашних изданиях - на ПК с TPM

Вообще, вы можете управлять шифрованием в любом издании Windows. Исторически в домашних изданиях отсутствие графических средств компенсировалось консольными, а единственное реальное ограничение Home - нельзя было включить шифрование.

ℹ️ Включение и выключение шифрования в Параметрах домашних изданий было доступно с Windows 8.1, но только на компьютерах с определенным набором характеристик. Начиная с версии 24H2 сняли требования к Modern Standby / валидации HSTI и проверке портов DMA.

Поэтому теперь во время чистой установки Windows автоматически шифруются праактически любые компьютеры с TPM. То есть вручную включать и не надо даже! Хотя кто-то захочет и отключить 😎

Я подготовил огромный FAQ по нюансам автоматического шифрования BitLocker в Windows 11 24H2. И он уже давно доступен подписчикам на Boosty!

➡️ https://boosty.to/sterkin/posts/6390d301-6775-4915-afb1-1a9704a1437c

Вы можете прочесть этот материал не только по подписке, но и просто поддержав меня разовым взносом на Boosty↑ или еще проще на CloudTips 🤝
🔥28🥴17👎15👍13😢10😱9🤬8💊5🤔4😐4👌1
🛑 Способы завершения зависших игр и приложений

Опытом в стиле девиза блога делятся участники чата @winsiders.

В актуальной версии Windows 11 есть кнопке завершения программы прямо в ее меню на панели задач. Кнопка включается в параметрах разработчика. Обнаружив ее, dartraiden порадовался:
До диспетчера [задач] не всегда доберешься, если программа особо &!#%^. Бывает, таскбар видно, а вот переключиться на окно диспетчера не получается.


В ответ Noxy поделился своим лайфхаком:
Мне с этим рабочие столы помогают. Бывает, особенно если игра какая зависнет, что ни свернуть ни закрыть нормально, тогда Win+Ctrl+➡️ и там уже нормально вызывается диспетчер и всё остальное, откуда можно ухуренить зависшее на первом столе.


Указанное сочетание клавиш переключает на следующий имеющийся виртуальный рабочий стол. Универсальнее Win+Ctrl+D - это создание и переход в одном флаконе. Управление столами - Win+Tab.

Alexander O предложил свой путь.
Можно просто настроить появление диспетчера поверх всех окон, тогда [по Ctrl+Shift+Esc] даже зависшая игра с эксклюзивным доступом к фулскрину не помеха.


Это настраивается в диспетчере задач: в Windows 11 в разделе ⚙️ Параметры, а в Windows 10 - в одноименном меню.

Всем зачёт! 👍
👍12017🔥10😢6👎4🤔3🤯3🤬2😱1👌1
⚙️ Закончилась сага с проблемными обновлениями среды восстановления

Она началась в январе 2024 с массовой ошибки 0x80070643 при установке обновления Windows RE в Windows 10. Я публиковал в блоге большой FAQ по теме.

⌛️ Вкратце, ошибка возникла, когда не хватало места на разделе RE или он отсутствовал в принципе. Microsoft предлагала пользователям вручную увеличивать раздел, но даже в статье с инструкциями была эпичная ошибка. А скрипт для увеличения имеющегося раздела появился значительно позже.

За полгода компания прошла все пять стадий принятия неизбежного и в итоге заменила проблемные обновления. Например, KB5034441 -> KB5042320. Причем это не абсолютно новая статья, а обновление старой, в том числе новый номер и ссылка.

ℹ️ Исправление все так же призвано обновить RE. Однако логика его применимости к операционной системе поменялась так, чтобы ошибка не возникала. Теперь обновление не предлагается, если на разделе со средой восстановления мало свободного места или его нет вовсе.

Отмечу пару любопытных нюансов.

🔸 10 июля в текст исходной статьи KB5034441 внесли изменения, которые гласили, что при ряде условий↑ обновление не нужно (sic!) и не будет предлагаться. Однако месяц спустя все-таки перевыпустили исправления под новыми номерами.

🔸 Microsoft решила не просто оставить уязвимыми, но и не уведомлять об этом ошибкой системы с уже включенным шифрованием BitLocker. Более того, в логе изменений KB5042320 говорится, что убрана ненужная информация об уязвимости CVE-2024-20666. Она послужила триггером для выпуска обновления, и никто ее не отменял. Почему информация об уязвимости стала ненужной - загадка 🤷‍♂️

Так или иначе, все те, кого ошибка действительно беспокоила, за полгода разобрались с увеличением размера раздела RE. Для всего остального есть текущая рекомендация Microsoft. Она фактически сводится к одной фразе: Don't worry, be happy 🎶
👍50🤡30👎10😱10🤬10😢10🥴8🤔7🤯71
1👍57👎26🤔24🤬22🤯20😱20😢172
⬇️ winget: быстрая установка своего набора программ на чистой системе

Недавно я рассказывал в блоге, как прицепить установку программ с winget к автоустановке Windows. (А заодно как установить winget в Windows Server и изданиях LTSC :) В статье был скрипт с ручной подборкой приложений для winget. Создание такого набора можно существенно автоматизировать!

👉 У winget есть команды export и import.

В настроенной системе эта команда сохранит json со списком программ в текущую папку:
winget export -o apps.json


В чистой системе эта команда установит приложения из списка:
winget import C:\temp\apps.json --ignore-unavailable --accept-package-agreements --accept-source-agreements


🤺 Теперь нюансы.

🔹 В список попадут только приложения, доступные в подключенных репозиториях. По умолчанию - это winget и msstore (репо магазина Windows).

🔹 Вы можете убрать ненужные приложения, открыв json в текстовом редакторе. По умолчанию winget пытается обновить приложения до новой версии. Если ее нет, он ничего не делает. Поэтому не тратьте время на удаление из списка предустановленных приложений и компонентов вроде "Microsoft.Edge" и "Microsoft.UI.Xaml.2.8".

🔹 Файл структурирован по репозиториям. Для экспорта конкретного репо есть ключ -s: -s msstore. К сожалению, в этом репо по идентификатору вида 9N8G7TSCL18R невозможно определить приложение. Можно подставить ИД в ссылку на веб-версию магазина или пройтись по json скриптом #PowerShell:

$json = Get-Content -Path "apps.json" -Raw | ConvertFrom-Json
$msstore = $json.Sources | Where-Object {$_.SourceDetails.Name -eq "msstore"} |
ForEach-Object {$_.Packages.PackageIdentifier}
$msstore | ForEach-Object {explorer https://apps.microsoft.com/store/detail/$($_); sleep 1}
# $msstore | ForEach-Object {Get-WinGetPackage -Id $_ -MatchOption Equals} | ft ID,Name -Wrap


Вместо открытия веб-версии магазина вы можете вывести названия с помощью модуля PowerShell (последняя строка).

🔹 Вы можете добавить в список прочие приложения, посмотрев их ИД командной search:
winget search nanazip

Разумеется, добавлять ИД нужно в раздел соответствующего репо, иначе при установке программа не найдется.

🔹 В список не попадут приложения, которые были установлены из образа вместе с системой (winget сообщает о каждом в процессе экспорта). Причем даже с помощью winget нельзя просто взять и получить список их магазинных ИД. Да и не все они доступны в репо магазина. Поэтому команда search в помощь.

✔️ Резюме
Команды import и export призваны ускорить создание привычной среды на чистой системе. И они неплохо с этим справляются! Да, не все программы есть в репозиториях, а перенос настроек приложений - отдельная большая тема. Но грех жаловаться на возможность одной командой установить несколько десятков любимых программ ✌️
🔥50👍32🤔118😢5👎4🤯4😱4🤬43😐2
▶️ Windows Terminal: перемещение курсора мышью и фрагменты кода

Хочу рассказать вам о паре новых возможностей терминала.

🖱 Перемещение курсора мышью

Нередко бывает, что надо изменить длинную команду. И чтобы перейти в нужное место, приходится давить ⬅️ или ➡️ либо нажимать их, удерживая Ctrl, что быстрее.

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

Этой фичей я уже пользуюсь несколько месяцев в превью терминала, а вчера она стала доступна в стабильной версии. Настраивается для профилей в дополнительных параметрах. Можно включить это поведение для отдельных профилей или сразу для всех (Defaults). Разумеется, у ненужных профилей можно отключить.

Но есть нюанс © Функция экспериментальная, и работает она только в оболочках которые её поддерживают. Например, это PowerShell Core, но не Windows #PowerShell, идущий в комплекте с ОС.

#️⃣ Фрагменты кода (code snippets)

Это только что появилось в превью терминала (я попробовал еще в Canary). Можно сохранять команды и даже небольшие скрипты. И быстро запускать их!

🎦 Демо от ПМа терминала.

По сути осуществляется ввод символов, прописанных в настройках (JSON-файл). В раздел actions добавляйте действие Send Input с нужным фрагментом.

{ "command": 
{
"action": "sendInput",
"input": "ping 1.1.1.1\r ping colts.com\r"
},
"name": "Demo ping",
"keys": "ctrl+alt+p"
}


В этом примере последовательно пингуются два ресурса (\r эмулирует нажатие клавиши Enter).

Сейчас для вызова повторных команд в моем арсенале поиск по истории (Ctrl+R) и Predictive IntelliSense (п. 3, фича модуля PSReadLine). Однако оба способа нередко "замусориваются" вариациями одной команды. Плюс можно выполнять фрагмент заданным сочетанием клавиш. Поэтому я уже вижу применение фрагментам кода!

Попробуйте эти фичи и поделитесь впечатлениями в чате! ✌️
👍55🤬8😱6🤯5😢4👎3🤔3😁1
⚙️ Как быстро восстановить разрешения на файл или папку

Недавно в чат поддержки пришел человек, который собственноручно сломал разрешения файла hosts. Он творил полную дичь - пытался сделать этот файл только для чтения, чтобы не слетел некий кряк 🤦‍♂️

Зато у меня появился повод показать один из моих любимых примеров мощи конвейеров в #PowerShell. От имени администратора:

cd C:\Windows\System32\drivers\etc
Get-Acl networks | Set-Acl hosts


В оригинале была одна команда, но так нагляднее. Перейдя в папку с файлами, берем список контроля доступа (ACL) у соседнего файла networks и применяем его к поврежденному hosts. Это всё! Восстанавливаются разрешения на объект файловой системы и его владелец.

ℹ️ Параметр -Path для пути к файлу я опустил. У этих командлетов он первый позиционный, т.е. подразумевается, если не указан. Такие вещи описаны в справке.

Проблему автора вопроса это решило, но ничему не научило. Уже через 5 минут он спросил, как изменить владельца родительской папки etc. Потому что не получалось сохранить измененный файл hosts 🤦‍♂️🤦‍♂️ В его инструкциях же не уточнялось, что текстовый редактор надо запускать от админа...

Вообще, правка разрешений нужна крайне редко. А для внесения изменений в файлы или реестр она фактически не требуется. На такой случай у меня есть отличная #классика блога с быстрым и грамотным способом выполнения операций с правами SYSTEM и TrustedInstaller ✌️
👍91😁16🤔6🤯6😢4👎3😱2🤬2🐳21
Windows 11, 10, etc - Вадим Стеркин
Викторина: что делает команда 'ngen eqi' в Windows?
От подписчиков 😂 Очень рад, что канал читают люди с отличным чувством юмора!
😁121👍16👎12🤔8😱7🤬4🥴2🤣2🗿2🔥1🤗1
🤷‍♂️ Владельцы локализованных Windows должны страдать

Особенно те, кто устанавливают систему с локализованного дистрибутива, нежели накатывает языковой пакет поверх оригинальной английской системы. Ну, может, и не должны, но регулярно страдают :)

Этот тезис получил очередное подтверждение на прошлой неделе. Множество пользователей VMWare Workstation из разных стран не смогли установить новую версию. Всех их объединяло наличие локализованной системы.

An error occurred while applying security settings. Authenticated Users is not a valid user or group.

Методом тыка страдальцы выяснили: установка проходит на ура, если создать в системе две группы с латинскими названиями - Authenticated Users и Users. Причем членство в этих группах не требуется.

Видимо, установщик просто проверял наличие этих групп по именам. Но такие имена будут только при установке с английского дистрибутива! А вот дальнейшая установка языкового пакета на имена групп уже не повлияет 👌

///

По совпадению я недавно разбирал похожую ситуацию на работе. Нас мигрируют в огороженную среду с правами обычного пользователя, поэтому повылезало много проблем с установкой бизнес-приложений. Детали опущу, но вкратце - некоторые программы легко ставятся мимо Program Files и нормально работают дальше. Прочие же этому противятся, причем нетрадиционными способами 🌈

Нормальные разработчики уже лет дцать используют манифест установщика. И если там указано requireAdministrator, он будет запускаться только с правами администратора. А тут некое приложение с бородатых времен поставляется в самораспаковывающемся CAB-архиве. Я извлек содержимое командой expand и увидел несколько батников.

Первый батник с ходу проверял наличие прав администратора, а при успехе вызывал другие файлы, устанавливающие службу и прочие штуки. Для проверки он искал в выводе команды whoami /groups строку Mandatory Label\High Mandatory Level 🤦‍♂️

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

🪲 Казалось бы, цель достигнута. Однако вывод команды локализован! Поэтому в русской или итальянской Windows вы с любыми правами такого не увидите. И соответственно вообще не сможете установить приложение этим инсталлятором.

Я предложил инженеру QA занести на это дефект, но он махнул рукой. Видимо, клиентская база использует исключительно английские ОС. Так-то даже на уровне батников можно было решить вне зависимости от языка. Например, такой костыль #PowerShell вызовет из одного батника другой с правами админа.

powershell -command "Start-Process -FilePath '%~dp0batch2.cmd' -Verb RunAs"

Глагол RunAs недавно был в канале. Я также показывал управление локальными пользователями и группами вне зависимости от языка ОС.

////

Я исторически использую Windows на английском языке, поэтому подобные проблемы мне не грозят. Если для вас такое невыносимо, хотя бы ставьте английский дистрибутив и накатывайте родной языковой пакет. Иначе - не забывайте так страдать ✌️
👍69🤯27😨23😁11👏4🥴4💊3😎3🌚2🔥1🤨1
🔎 Новое в блоге: Дело об окнах командной строки при входе в систему

Это могло бы стать новым делом Шерлока Холмса, однако он уже фактически раскрывал его дважды, как вы увидите дальше. Еще одна вариация не тянет на новую главу, но все-таки дело было любопытное ввиду сложных условий!

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

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

➡️ Читайте в блоге: https://www.outsidethebox.ms/22296/
👍66🔥21👏10😢9🤔8😱7🤯5👎3🤬32
Вечерний опрос: выключаете ли вы на ночь свой основной домашний компьютер? Чтобы не усложнять, в вариантах ответа под сном понимаются любые режимы сна (S1-S3), гибернация (S4) и Modern Standby.
Final Results
35%
Выключаю, быстрый запуск отключен или неприменим
11%
Выключаю, но не в курсе быстрого запуска
19%
Вручную отправляю в сон
9%
Компьютер сам уходит в сон
18%
Компьютер работает всю ночь
3%
У меня нет домашнего компьютера
4%
Моего варианта тут нет
🤔26👍9🤪8🤯6😴6👀6😱4😢4🤬2👎1
Новое в Windows 11 24H2: вкладка "Цифровые подписи" у всех файлов

Впервые нововведение было замечено в инсайдерских сборках еще в ноябре 2023 года. Изменение любопытное и несколько загадочное.

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

👉 Смысл эта функция обретает при просмотре свойств системных файлов и драйверов. У них теперь отображаются подписи каталогов!

Исторически файлы операционной системы не имели вкладки Digital Signatures (Цифровые подписи) в свойствах и поэтому выглядели неподписанными. Дело в том, что подписывается не каждый файл, а каталог, которому файлы принадлежат.

ℹ️ Каталоги хранятся в папке %windir%\system32\CatRoot. Открыв любой cat-файл двойным щелчком, вы увидите вкладки General и Security Catalog. На второй вкладке перечислены хэши всех файлов, которые подписаны посредством каталога.

В 24H2 именно к этим сведениям вы и переходите из раздела Catalog Signatures на вкладке Digital Signatures у системных файлов. Просто в этом случае содержимое каталога фильтруется по файлу, который вы просматриваете. Поэтому вы видите в списке только один хэш, а не полный набор хэшей, как при открытии cat-файла.

⚙️ Во время установки драйвера диспетчер PnP извлекает его подпись из каталога и расшифровывает ее, используя публичную часть ключа Microsoft для подписи драйверов. Затем он сравнивает полученный хэш с хэшем файла устанавливавемого драйвера. Если хэши совпадают, драйвер считается прошедшим тестирование WHQL. Иначе диспетчер PnP действует в соответствии с политикой подписи драйверов в операционной системе - отказ, предупреждение пользователя или тихая установка.

Возвращаясь к новой вкладке, я затрудняюсь определить ее практическую пользу. Особенно в этих крошечных древних окошечках Win32. Я также с трудом представляю запрос от пользователей на это. Но вреда никакого нет. Да и хорошо, что наконец закрыли логический пробел с якобы отсутствующей подписью у системных файлов ✌️
👍48😱4🤩4👎2🤔2🤬2😢21🤯1
🔒 KeePass: автоматический ввод в приложениях с одинаковыми заголовками окна

Это третий пост серии про #autotype в KeePass. Ранее в канале:
🔹Основы автонабора и порядок записей в его окне
🔹Автоматический ввод учетных данных в браузере по URL страницы

Учетные данные приходится вводить не только в браузерах, но и в приложениях. И в рабочей среде у меня несколько приложений с одинаковым заголовком окна: Sign in. Соответственно, по сочетанию клавиш Ctrl+Alt+A вываливается список записей для разных приложений.

👉 Хотелось бы автоматически вводить имя пользователя и пароль соответственно приложению. И эту задачу решает плагин Disambiguator! С его помощью в настройках автонабора для каждой записи можно добавлять параметры {exe:} и/или {ctl:}.

🔶 Параметр {exe:} определяет приложение

Для заголовка окна вместо Sign in задается Sign in{exe:MyApp.exe}, например. В качестве значений этот параметр принимает имя файла с расширением и без оного, полный путь к файлу, в том числе с подстановочным символом *, а также регулярное выражение. Примеры в ридми.

В моем случае есть семейство Java-приложений, где одинаковые не только заголовки окон, но и имена исполняемых файлов - javaw.exe! Поэтому спасаюсь путем к файлу:

Sign in{exe:*\*folder-name*\javaw.exe}

🔶 Параметр {ctl:} проверяет наличие заданного поля в окне

Его можно указать по ID, имени или классу контрола. Чтобы выяснить их, переведите плагин в режим создания отчета: Tools - The Disambiguator Options - Report, задайте в поле с заголовком окна параметр {report} и выполните автонабор.

Плагин создаст отчет по всем контролам в окне. Фрагмент:
     Child ID: 112
Name : EnterPassword
Class : Static
Child ID: 113
Name : EnterPassword
Class : Edit

Это пример поля для ввода пароля. 112 - его название, а 113 - редактируемое поле, куда вводится текст. В KeePass для заголовка окна задается Sign in{ctl:113}. Не забудьте отключить режим отчета у плагина. При автонаборе он проверит не только заголовок окна, но и наличие в нем поля с этим ИД.

Пользуясь случаем, хочу передать привет коллегам, которые до сих пор копипастят учетные данные из блокнота или вводят их руками каждый раз ✌️
👍46🔥17😱7👎5🤯4😢4🤔1🤬1
👀 Очумелые ручки: лончер программ из кнопки на панели задач

В чате читатель Станислав возжелал странного. Ему захотелось иметь на панели задач кнопку, нажав которую правой кнопкой мыши он смог бы из списка переходов запускать свои программы:

По задумке, это такая "хитрая" замена кучи ярлыков на панели задач и папок, которые надо открывать. При этом позволяющая при расшаре экрана не отсвечивать содержимым панели.

Забегая вперёд, так и осталось невыясненным, почему нужно скрывать от чужих глаз свои приложения. Похоже на классическую неправильно поставленную задачу 🤷‍♂️

Я сразу предложил искать сторонний лончер, потому что средствами системы такое сделать невозможно. И добавил, что Станислав старательно описывает... меню Пуск! 🚀 Действительно, все то же самое, только вызывается оно левой кнопкой мыши нежели правой. Читателя это не устроило - якобы, во время демонстрации экрана меню Пуск может случайно открыться и спалить список программ.

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

В чате я общался с телефона. А когда сел за компьютер и окинул взглядом свою панель задач, то сразу придумал решение. В полном соответствии с девизом блога!

👉 Windows Terminal! В терминале можно создать множество профилей, которые автоматически выводятся в список переходов. Их предназначение - запуск различных консолей во вкладках терминала. Но ничто не мешает задать для профиля любую команду!

⚙️ У терминала есть параметры командной строки, но здесь это даже не требуется. Все настраивается в графическом интерфейсе.

1. Создайте профиль и пропишите команду на:
• запуск программы (для приложений в PATH полный путь не нужен)
• открытие папки проводника: explorer c:\temp

2. Укажите путь к значку.

🩼 Разумеется, у этого решения есть недостатки. Приложения будут запускаться чуть медленнее из-за прокладки в виде терминала. И Станислав быстро выяснил, что в списке переходов отображается только 13 профилей. Для запуска остальных придется открывать терминал. Что ж, в магазине есть Terminal Preview, а на GitHub в релизах - Canary в ZIP-архиве. Вот вам и три лончера на 39 программ :)

В общем, think outside the box! ✌️

P.S. В чате пара человек указали, что проще на панель задач добавить панель на основе папки с ярлыками. Однако эта возможность выпилена в Windows 11 вместе со старой панелью задач. Поэтому дедовские методы уже не работают 🤷‍♂️
💊50👍31🤯29🤔16👎12🔥5👨‍💻54👏4🤡31
📊 Ретроспектива к опросу о выключении компьютера

🔌 Сейчас 44% подписчиков канала выключают компьютер на ночь. Четверть выключающих не в курсе быстрого запуска, который активирован по умолчанию начиная с Windows 8. Если же ограничить выборку только теми читателями, кто выключает ПК или отправляет в различные режимы сна, то 6 человек из 10 предпочитают выключение сну.

🕓 Про быстрый запуск я писал и в канале 3.5 года назад - технология не имеет смысла на приличных конфигурациях. Там же был и предыдущий опрос о выключении компьютера, хотя и с другими вариантами ответов. Тогда 55% выключали ПК всегда или регулярно.

⌛️ Двигаясь назад по шкале времени, возвращаемся в 2012 год - выпиленную кнопку Пуск и статью блога Знаете ли вы все эти способы выключения компьютера? Результаты опроса утеряны, но в комментариях сохранился мой анализ первого дня голосования. Тогда 60% даже самых продвинутых читателей выключали компьютер - 38% владельцев мобильных ПК и 73% стационарных.

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

Однако я остаюсь при мнении, что самая распространенная причина выключения - привычка 😎
👍68🤔28👎21😁7😱6🤬43😢2🤯1🙏1