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

Как программно свернуть все окна
04.09.2019 | Категория: Образ мышления: Assembler | Автор: ManHunter
Есть разные способы программно свернуть все открытые окна. Простой и топорный вариант решения - эмуляция нажатия клавиш Win+M, которые и выполняют команду "Свернуть все окна". Делается это через последовательность вызовов keybd_event.Code (Assembler) : Убрать нумерацию
- ; Эмуляция нажатия клавиш Win+M
- invoke keybd_event,VK_LWIN,0,0,NULL
- invoke Sleep,1
- invoke keybd_event,'M',0,0,NULL
- invoke Sleep,1
- invoke keybd_event,VK_LWIN,0,KEYEVENTF_KEYUP,NULL
Code (Assembler) : Убрать нумерацию
- ; Эмуляция нажатия клавиш Win+Shift+M
- invoke keybd_event,VK_LWIN,0,0,NULL
- invoke Sleep,1
- invoke keybd_event,VK_LSHIFT,0,0,NULL
- invoke Sleep,1
- invoke keybd_event,'M',0,0,NULL
- invoke Sleep,1
- invoke keybd_event,VK_LSHIFT,0,KEYEVENTF_KEYUP,NULL
- invoke Sleep,1
- invoke keybd_event,VK_LWIN,0,KEYEVENTF_KEYUP,NULL
Читать статью целиком »
Просмотров: 854 | Комментариев: 5

Обработка перетаскивания ссылок в окно приложения
16.04.2019 | Категория: Образ мышления: Assembler | Автор: ManHunter

Обработка перетаскивания ссылок в окно приложения
С перетаскиванием файлов в окно приложения мы уже давно разобрались, это реализуется несложно. Теперь давайте разберем более интересную задачу, а именно перетаскивание в окно приложения ссылок или текста из браузеров, текстовых редакторов и других программ.
Читать статью целиком »
Просмотров: 944 | Комментариев: 0

Работа с иконками файлов на Ассемблере
23.11.2017 | Категория: Образ мышления: Assembler | Автор: ManHunter

Работа с иконками файлов на Ассемблере
Я уже рассказывал, как можно получить иконку из окна чужого приложения, сегодня тема будет похожей. Разница в том, что иконку мы будем получать из файла на диске. Применений для этого может быть много, например, чтобы отрисовать в вашем приложении красивый список файлов, нарисовать всплывающее меню, заменить иконку в собранном джойнере или патче. Для работы с иконками в WInAPI есть несколько функций, каждая со своими особенностями. В этой статье я попытаюсь подробно рассказать о них.
Читать статью целиком »
Просмотров: 1195 | Комментариев: 2

Windows 7 Taskbar API на Ассемблере
30.06.2010 | Категория: Образ мышления: Assembler | Автор: ManHunter

Progress Bars и Overlay Icons
Продолжаю потихоньку осваивать внутренности Windows 7. В новой системе появилась такая приятная фича интерфейса, как отображение прогресса выполнения какого-нибудь действия прямо на кнопке приложения в панели задач. Впервые я увидел это в программе Total Commander при копировании и переносе файлов, сразу очень захотелось узнать как это делается и научиться делать самому. К сожалению, во всех доступных мне интернетах были найдены только примеры для Delphi, .NET и прочих языков высокого уровня. Пришлось лезть в отладчик и запасаться железным терпением, зато в результате получилось вполне рабочее решение. Для управления элементами панели задач в Windows 7 используется COM-интерфейс ITaskBarList3. Как обычно, никаких описаний в FASM нет, и все необходимое нужно искать самому или портировать с других языков.
Code (Assembler) : Убрать нумерацию
- ; GUID {56FDF344-FD6D-11D0-958A-006097C9A090}
- CLSID_TaskbarList dd 056FDF344h
- dw 0FD6Dh
- dw 011D0h
- db 095h, 08Ah, 000h, 060h, 097h, 0C9h, 0A0h, 090h
- ; GUID {EA1AFB91-9E28-4B86-90E9-9E9F8A5EEFAF}
- IID_ITaskbarList3 dd 0EA1AFB91h
- dw 09E28h
- dw 04B86h
- db 090h, 0E9h, 09Eh, 09Fh, 08Ah, 05Eh, 0EFh, 0AFh
- ; ITaskbarList3 Interface
- SetProgressValue = 4*09
- SetProgressState = 4*10
- RegisterTab = 4*11
- UnregisterTab = 4*12
- SetTabOrder = 4*13
- SetTabActive = 4*14
- ThumbBarAddButtons = 4*15
- ThumbBarUpdateButtons = 4*16
- ThumbBarSetImageList = 4*17
- SetOverlayIcon = 4*18
- SetThumbnailTooltip = 4*19
- SetThumbnailClip = 4*20
- ; Типы прогрессбаров на панели задач
- TBPF_NOPROGRESS = 0
- TBPF_INDETERMINATE = 1
- TBPF_NORMAL = 2
- TBPF_ERROR = 4
- TBPF_PAUSED = 8
- ; Константы для работы с объектом
- CLSCTX_INPROC_SERVER = 1
- S_OK = 0
Читать статью целиком »
Просмотров: 6754 | Комментариев: 5
