Blog. Just Blog

Быстрый поиск

Введите фрагмент названия статьи для поиска

Получение информации о состоянии батареи ноутбука

28.03.2020 | Категория: Software | Автор: ManHunter

Получение информации о состоянии батареи

Эта статья будет интересна всем обладателям ноутбуков, коих сейчас очень много. Вам наверняка не раз было интересно, насколько эффективно расходуются ресурсы батареи вашего электронного спутника жизни. В "коробочный" комплект Windows входит утилита powercfg, которая предназначена для управления электропитанием ноутбука. Помимо ее прочих богатых возможностей, одна из функций - генерация детального отчета о состоянии батареи и проблемах, которые влияют на продолжительность работы компьютера.

Читать статью целиком »
Просмотров: 755 | Комментариев: 5

Как спрятать диск в Проводнике Windows

08.02.2020 | Категория: Software | Автор: ManHunter

Как спрятать диск в Проводнике Windows

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

Читать статью целиком »
Просмотров: 788 | Комментариев: 3

Как узнать раскладку клавиатуры другого приложения

21.01.2020 | Категория: Образ мышления: Assembler | Автор: ManHunter
Сегодня разберем, как можно узнать раскладку клавиатуры, которая активна в окне того или иного приложения. Также она может называться идентификатор языка ввода. С оконными приложениями все просто. Зная хэндл окна, через GetWindowThreadProcessId получаем идентификатор процесса, которому принадлежит исследуемое окно, а затем с помощью функции GetKeyboardLayout получаем код раскладки клавиатуры, которая активна в этом окне. Для консольных окон немного сложнее, так как они не реагируют на GetKeyboardLayout. Но это можно сделать при помощи недокументированной функции GetConsoleKeyboardLayoutName, которая возвращает код раскладки клавиатуры в виде строки. Просто так работать с консолью нельзя, для этого надо предварительно приаттачиться к процессу консольного окна, а после получения нужных данных отключиться от него.
  1.         ; Получить активное окно
  2.         invoke  GetForegroundWindow
  3.         ; Получить идентификатор процесса
  4.         invoke  GetWindowThreadProcessId,eax,pID
  5.         mov     ebx,eax
  6.  
  7.         ; Это консольное окно?
  8.         invoke  AttachConsole,[pID]
  9.         or      eax,eax
  10.         jz      .loc_gui
  11.  
  12. .loc_console:
  13.         ; Получить раскладку консольного окна
  14.         invoke  GetConsoleKeyboardLayoutName,buff
  15.         or      eax,eax
  16.         jnz     @f
  17.  
  18.         ; Не получилось, отключиться от консоли
  19.         invoke  FreeConsole
  20.         ; Попробовать получить раскладку как у оконного приложения
  21.         jmp     .loc_gui
  22. @@:
  23.         ...
  24.         ; В buff строка с кодом раскладки типа "00000419"
  25.         ...
  26.  
  27.         ; Просто отключиться от консоли
  28.         invoke  FreeConsole
  29.         jmp     .loc_done
  30.  
  31. .loc_gui:
  32.         ; Получить идентификатор раскладки клавиатуры
  33.         invoke  GetKeyboardLayout,ebx
  34.         and     eax,0xFFFF
  35.         ...
  36.         ; В EAX код раскладки
  37.         ...
  38. .loc_done:
  39.         ...
Если все прошло нормально, то у нас будет или числовой код раскладки, или строка с кодом раскладки, из которой этот код можно легко извлечь. Конечно, пользователю правильнее будет показывать не просто набор цифр, а человекопонятные названия раскладки. Соответствие кодов раскладок названиям языков можно посмотреть в MSDN, а можно переложить эту задачу на систему и воспользоваться функцией VerLanguageName или GetKeyboardLayout с флагом LOCALE_SLANGUAGE.

Читать статью целиком »
Просмотров: 562 | Комментариев: 10

Добавляем вкладки в Проводник Windows

19.01.2020 | Категория: Software | Автор: ManHunter

Добавляем вкладки в Проводник Windows

Очередная улучшалка для любителей стандартного Проводника Windows - программа Clover. Она добавляет в окно Проводника вкладки, внешне напоминающие вкладки в браузере Chrome. Таким образом в одном окне Проводника может быть одновременно открыто несколько папок. Поддерживаются версии от Windows XP до Windows 10 всех разрядностей. Также программа Clover совместима с другими системными надстройками, например, с Classic Shell.

Читать статью целиком »
Просмотров: 1399 | Комментариев: 8

Список ошибок обновления Windows

10.01.2020 | Категория: Software | Автор: ManHunter

Список ошибок обновления Windows

Как я уже неоднократно говорил, система Windows очень неинформативна, когда дело касается описания ошибок. Обычно в лог или в диалоговое окно просто выводится числовой код ошибки, по которому нереально определить, что же вообще произошло. Приходится лазить в гуглояндексы, шерстить MSDN в поиске хоть какой-то информации, связанной с этим кодом. Здесь я выкладываю коды ошибок с их строковыми представлениями и, по возможности, с человекопонятным описанием. За основу взята табличка с сайта winitpro.ru, за что им большое спасибо. Всякую ерунду я почистил, оставил только более-менее значимую информацию. Сразу предупреждаю, что даже в таком виде без определенных навыков воспользоваться ей будет сложно, но хотя бы будет примерно понятно, в какую сторону направлять поиски.

Читать статью целиком »
Просмотров: 1073 | Комментариев: 12

Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2021
При использовании материалов ссылка на сайт обязательна
Время генерации: 0.11 сек. / MySQL: 3 (0.0444 сек.) / Память: 4.75 Mb
Наверх