В предыдущих статьях мы разобрались с основами среды и достаточно подробно изучили язык программирования Microsoft PowerShell. Завершая цикл, мы рассмотрим работу с процессами и службами, реестром и журналами событий в распределенной среде, а также разберем некоторые способы администрирования операционной системы, настройки стороннего ПО и просмотра сведений об установленном оборудовании. Для этого в PowerShell активно применяются объекты различных типов, изучению которых были посвящены четвертая и пятая части цикла.Читать полностью »
Рубрика «разработка под windows» - 8
Что такое Windows PowerShell и с чем его едят? Часть 6: Решение практических задач
2020-06-03 в 10:13, admin, рубрики: powershell, Блог компании RUVDS.com, разработка под windows, системное администрирование, системное программированиеКак Microsoft убила AppGet
2020-05-29 в 8:57, admin, рубрики: AppGet, miran, open source, Windows 10, WinGet, WSL, Блог компании Дата-центр «Миран», дата-центр "Миран", пакетный менеджер, разработка под windows, системное администрированиеНа прошлой неделе Microsoft выпустила пакетный менеджер WinGet в рамках анонсов на конференции Build 2020. Многие посчитали это ещё одним доказательством сближения Microsoft с движением Open Source. Но только не канадский разработчик Кейван Бейги (Keivan Beigi), автор свободного менеджера пакетов AppGet. Сейчас он силится понять, что произошло за последние 12 месяцев, в течение которых он общался с представителями Microsoft.
В любом случае, теперь Кейван прекращает разработку AppGet. Клиентские и серверные службы переходят в режим технического обслуживания немедленно до 1 августа 2020 года, после чего будут закрыты навсегда.
Читать полностью »
Что Microsoft представила разработчикам на Build: winget, GUI-программы в WSL2 и прочее
2020-05-20 в 15:41, admin, рубрики: .net, Microsoft Build, PowerToys, scott hanselman, windows, WSL, разработка под windowsСейчас в разгаре онлайн-конференция Microsoft Build, и вчера вечером отгремела её презентационная часть. Сначала там были воодушевляющие слова от Сатьи Наделлы и освещение конкурса Imagine Cup, но нам интереснее всего блок «Скотт Хансельман представляет новые штуки для разработчиков».
На Хабре об этом уже писали в формате «по фразе на новинку», но мы считаем, что эти новости достойны большего — поэтому вдумчиво всмотрелись в трансляцию, вчитались в комментарии разработчиков на разных ресурсах и сделали подробный пост со скриншотами.
Вышел Windows Terminal 1.0
2020-05-20 в 13:00, admin, рубрики: microsoft, windows terminal 1.0, Блог компании Microsoft, вышел windows terminal 1.0, Настройка Linux, Программирование, разработка под windows, системное администрирование, скачать windows terminalМы невероятно горды тем, что можем объявить о выпуске Windows Terminal 1.0! Windows Terminal прошел долгий путь с момента своего анонса на Microsoft Build 2019. Как и всегда, вы можете загрузить Windows Terminal из Microsoft Store или со страницы выпусков на GitHub. Windows Terminal будет иметь ежемесячные обновления, начиная с июля 2020 года.
Все нововведения Windows 10 2004 (20H1)
2020-05-12 в 20:53, admin, рубрики: 2004, 20H1, may update, windows, Windows 10, обновление Windows, разработка под windows, СофтСегодня вечером был выпущен финальный ISO-образ Windows 10 2004 (20H1). Им стал билд за номером 19041.208.vb_release_svc_im.200416-2050. Образы для разработчиков уже доступны на MSDN как вскоре и сами знаете где.
Как я работал в Agile-команде Microsoft в 1998 году, когда термин Аджайл еще только пытались придумать
2020-04-24 в 6:44, admin, рубрики: agile, agile development, hr-процесс, Карьера в IT-индустрии, Программирование, разработка, разработка под windows, управление проектамиПредставьте, что вам надо разработать операционную систему, которую переведут на десятки языков, продадут миллиардным тиражом, дата выхода релиза уже публично объявлена самим Биллом Гейтсом. Одна незадача — ТЗ с полным списком функций и то, каким будет интерфейс новой Windows — этого не только нет, но и не будет почти до самого релиза. Вот она — суть Аджайл, не так ли?Читать полностью »
Расследование: что выше, чем приоритеты потоков в Windows?
2020-04-23 в 7:12, admin, рубрики: Windows 10, WPA, Клиентская оптимизация, потоки, потоковая обработка данных, приоритеты, Программирование, разработка под windows, реверс-инжиниринг, торможениеЭто расследование, как и многие другие, началось с того, что я занимался собственными делами, не пытаясь искать себе проблем. На этот раз всё, что я сделал — открыл крышку ноутбука и попытался выполнить вход в систему.
В первые несколько раз, когда это приводило к задержке в двадцать секунд, я игнорировал проблему, надеясь, что она решится сама собой. В следующие несколько раз я задумался о расследовании, но проблемы производительности, возникающие ещё до того, как ты вошёл в систему, сложнее решать, а мне было лениво.
Когда я заметил, что избегаю закрывать ноутбук, потому что меня пугают эти слишком частые задержки, то понял, что пора заняться этим серьёзно.
К счастью, я недавно исправил трассировку кольцевого буфера UIforETW, сделав его надёжным, поэтому я запустил его и начал ждать следующего случая задержки. Долго ожидать мне не пришлось.
Мне потребовалось несколько раз, чтобы получить полностью устраивающую меня трассировку ETW. И поскольку эта территория была для меня незнакомой, на выяснение происходящего потребовалось какое-то время. Я по-прежнему не полностью разобрался в проблеме, но на 90% понял причины её возникновения. Мне удалось многое узнать, в том числе некоторые новые подробности о Windows-планировщике, а также я обнаружил абсолютно эффективное решение.
Идеальная трассировка, которую я в конце концов записал, при загрузке в Microsoft Windows Performance Analyzer (WPA) выглядит так:

Стандартные события, окна в фокусе и использование ЦП
Эта таблица и два графика содержат кучу информации. Верхняя таблица (Generic Events) показывает записанные UIforETW нажатия клавиш. Я пытался нажимать клавишу (код виртуальной клавиши 162) раз в секунду, пока не появится поле ввода пароля. Так как эти 17 нажатий клавиши выбраны, в графике ниже они показаны вертикальными синими линиями для упрощённой визуализации времени выполнения критически важных событий. По оси x отложено время в секундах.
Читать полностью »
Что такое Windows PowerShell и с чем его едят? Часть 5: Доступ к внешним объектам
2020-04-22 в 15:54, admin, рубрики: powershell, Блог компании RUVDS.com, разработка под windows, системное администрирование, системное программированиеВ операционных системах Windows поддерживаются различные объектные инфраструктуры. Для доступа к ним можно использовать интерфейсы прикладного программирования (API), но разработка полноценных приложений не всегда оправдана. В PowerShell существуют специальные командлеты, позволяющие обращаться к объектам .NET, COM, WMI (CIM) и ADSI в интерактивном режиме. В четвертой части цикла мы изучили основы с упором на классы .NET Core, а сейчас хотим углубить тему и разобрать особенности взаимодействия PowerShell с внешними объектами.Читать полностью »
Что такое Windows PowerShell и с чем его едят? Часть 4: Работа с объектами, собственные классы
2020-03-31 в 11:55, admin, рубрики: powershell, Блог компании RUVDS.com, разработка под windows, системное администрирование, системное программированиеТекстовый вывод команд в окне интерпретатора PowerShell — всего лишь способ отображения информации в пригодном для человеческого восприятия виде. На самом деле среда ориентирована на работу с объектами: командлеты и функции получают их на входе и возвращают на выходе, а доступные в интерактивном режиме и в сценариях типы переменных базируются на классах .NET. В четвертой статье цикла мы изучим работу с объектами более детально.Читать полностью »
Не давайте имена потокам из ThreadPool при отладке в VS
2020-03-29 в 20:52, admin, рубрики: c++, debug, multithreading, threadpool, vs, отладка, разработка под windowsВ некотором 2017 году, во время отладки в VS, производительность в проекте падала на ~80%, превращая игру в сборник различных ассинхронных кадров. Виновником торжества стала функция SetThreadName внутри пула. Читать полностью »