Быстрый поиск
Введите фрагмент названия статьи для поиска
Как узнать, какие привилегии есть у процесса
11.12.2023 | Категория: Образ мышления: Assembler | Автор: ManHunter
Ранее я уже писал, как устанавливать нужные привилегии для процесса. Сегодня будет пример, как можно получать список доступных привилегий. Но сперва немного констант и структур, которые необходимы для работы с привилегиями.Code (Assembler) : Убрать нумерацию
- TOKEN_QUERY = 8h
- TokenPrivileges = 3
- struct LUID
- LowPart dd ?
- HighPart dd ?
- ends
- struct LUID_AND_ATTRIBUTES
- pLuid LUID
- Attributes dd ?
- ends
- struct TOKEN_PRIVILEGES
- PrivilegeCount dd ?
- Privileges LUID_AND_ATTRIBUTES
- ends
Читать статью целиком »
Просмотров: 177 | Комментариев: 2
Drag'n'Drop файлов в консольное окно
06.12.2023 | Категория: Образ мышления: Assembler | Автор: ManHunter
Очередная порция странного. На этот раз я решил попробовать реализовать обработку перетаскивания файлов в консольное окно. Для обычных GUI-приложений с этим нет вообще никаких сложностей, а вот с консольными приложениями придется повозиться. Вопреки тиражируемым в этих ваших интернетах статьям, с консольными окнами не работают никакие стандартные способы перетаскивания данных типа манипулирования с расширенными стилями консольного окна WS_EX_ACCEPTFILES, с принудительным назначением ему DragAcceptFiles, с субклассированием на предмет обработки сообщения WM_DROPFILES или даже через реализацию интерфейса IDropTarget. Ни-че-го. В тоже время, если открыть системный командный интерпретатор cmd.exe и попытаться перетащить на его консольное окно какой-нибудь файл из Проводника или файлового менеджера, то в командной строке появится полный путь к этому файлу. Значит какие-то зачатки технологии Drag'n'Drop для консольных окон все-таки имеются.С помощью обработки событий консоли удалось выяснить, что при перетаскивании файла в консольное окно, путь к нему передается посимвольно через события KEY_EVENT. При более детальном анализе я также выяснил, что четкой системы тут нет, часть символов передается с событием нажатия и отпускания клавиши, а часть только с отпусканием клавиш. Единственные закономерности заключаются в том, что такие символы передаются обязательно со счетчиком повторений равным 1 и точно с флагом отпускания клавиш.
Также не стоит забывать про различные программы-обработчики клавиатуры типа Punto Switcher, которые самостоятельно обрабатывают введенные символы и затем могут менять их раскладку и последовательность через эмуляцию ввода с клавиатуры.
Читать статью целиком »
Просмотров: 300 | Комментариев: 4
Как установить английскую раскладку при запуске HiEW
02.12.2023 | Категория: Software | Автор: ManHunter
Как установить английскую раскладку при запуске HiEW
Несмотря на почтенный возраст, hex-редактор HiEW до сих пор пользуется заслуженной популярностью среди исследователей программного обеспечения. Да, он не лишен недостатков, да, к настоящему времени имеется огромное количество альтернатив, но лично для меня HiEW остается одним из самых востребованных инструментов. К большому сожалению, автор практически прекратил развитие программы и крайне неохотно реагирует на предложения пользователей, ограничиваясь парой-тройкой незначительных исправлений в год. Теперь к основной проблеме, которую я вынес в заголовок этой статьи. У меня Windows c русским интерфейсом, соответственно, все стартующие программы запускаются с русской раскладкой по умолчанию. Это меня вполне устраивает, но только не в случае с HiEW, для которого в 99,99% случаев требуется вводить символы в английской раскладке. Конечно, можно просто переключить раскладку и не напрягаться, но мне хочется какого-то абсолютного решения задачи. Этим сегодня и займемся. А заодно потренируемся в ручной распаковке ASPack и всевозможной работе непосредственно с самим HiEW.
Читать статью целиком »
Просмотров: 966 | Комментариев: 16
Получение информации о шрифте с помощью функции GetFontResourceInfo
29.11.2023 | Категория: Образ мышления: Assembler | Автор: ManHunter
Получение информации о шрифте с помощью функции GetFontResourceInfo
В статье о загрузке шрифтов из памяти я упомянул об использовании недокументированной функции GetFontResourceInfo, но не привел никаких примеров ее вызова. А функция интересная, так что самое время исправить этот пробел в знаниях.
Читать статью целиком »
Просмотров: 251 | Комментариев: 3
Парсинг метаданных DSF-файлов на Ассемблере
11.11.2023 | Категория: Образ мышления: Assembler | Автор: ManHunter
Парсинг метаданных DSF-файлов на Ассемблере
Во время очередного пиратского набега на торренты мне попался музыкальный альбом в формате DSF. Это контейнер для аудиопотока в супер-мега качестве, разработанный компаниями Sony и Philips. В результате и файлы получаются по 400-500 мегабайт на одну песню. Может быть для аудиофилов такое качество как-то можно обосновать, но для меня этот формат представляет исключительно спортивный интерес. А точнее, как из таких файлов извлечь метаданные.
Читать статью целиком »
Просмотров: 172 | Комментариев: 0