Быстрый поиск
Введите фрагмент названия статьи для поиска
Обмен данными между процессами с помощью WM_COPYDATA
17.02.2018 | Категория: Образ мышления: Assembler | Автор: ManHunter
Обмен данными между процессами с помощью WM_COPYDATA
Обмен данными между процессами приложений может выполняться различными способами. Это может быть shared-память, буфер обмена, COM-объекты и другие высокоуровневые способы. Но наиболее простым и понятным способом является передача данных с использованием сообщения WM_COPYDATA. В этом случае обмен происходит через ядро системы с выделением памяти в принимающем процессе. Таким образом, например, выполняется взаимодействие с окном плеера JetAudio.
Читать статью целиком »
Просмотров: 2850 | Комментариев: 2
Работа с окнами оповещений в трее на Ассемблере
03.02.2018 | Категория: Образ мышления: Assembler | Автор: ManHunter
Работа с окнами оповещений в трее на Ассемблере
Окно оповещения в системном трее, оно же System Tray Balloon Notification, - очень удобный инструмент для взаимодействия с пользователем и оповещения его о каких-либо событиях. Когда у меня возникла необходимость, в этих ваших интернетах нашлось не так много материалов по работе с такими оповещениями, а тем более на Ассемблере. Пришлось разбираться самому. Зато теперь я попробую хоть чуть-чуть восполнить этот пробел.
Читать статью целиком »
Просмотров: 2117 | Комментариев: 0
Как исправить кракозябры после установки пакета локализации Windows
01.11.2017 | Категория: Software | Автор: ManHunter
Как исправить кракозябры после установки пакета локализации Windows
Недавно знакомые попросили посмотреть их ноутбук с лицензионной англоязычной Windows 7, на которую штатными средствами был установлен русский пакет локализации. Вроде бы все получилось хорошо, интерфейс действительно стал русскоязычным. Но после этого в некоторых программах вместо русских букв стали появляться так называемые "кракозябры", то есть нечитаемые символы. Как удалось решить эту проблему, я сейчас расскажу.
Читать статью целиком »
Просмотров: 4227 | Комментариев: 5
Установка языка ввода по умолчанию при входе в систему
28.09.2017 | Категория: Software | Автор: ManHunter
Установка языка ввода по умолчанию при входе в систему
Небольшая полезняшка, облегчающая работу на компьютере. Была установлена русская Windows, при установке, соответственно, выбрана русская раскладка клавиатуры. Теперь при входе в систему, когда запрашивается пароль, по умолчанию выставлена русская раскладка. А пароль-то из английских букв! Конечно, переключить раскладку займет секунду, но почему бы не сделать жизнь чуть комфортнее?
Читать статью целиком »
Просмотров: 8102 | Комментариев: 10
Ассемблер: получаем имя файла оболочки
27.09.2017 | Категория: Образ мышления: Assembler | Автор: ManHunter
В этой статье я расскажу, как можно программно получить имя файла оболочки Windows. Зачем это нужно? Например, есть программа, которая инжектит свою библиотеку в работающую копию explorer.exe и при этом подразумевает, что такой процесс в системе гарантированно должен присутствовать. В подавляющем большинстве случаев действительно все работает, никаких нареканий нет. Но стоит запустить программу под альтернативным шеллом, например, Aston Desktop, и она неизбежно падает с ошибкой, потому что explorer.exe в системе вообще не запущен. Проверки на соответствие оболочки в программе нет, и вместо корректного информирования пользователя о причинах невозможности запуска мы получаем фатальное падение. И хорошо, если не вместе с системой.Чтобы найти процесс оболочки, сперва надо определить ее главное окно. В MSDN для этого рекомендуют воспользоваться следующим кодом:
Code (Assembler) : Убрать нумерацию
- ; Найти окно с классом "Progman"
- invoke FindWindow, szClass, NULL
- ...
- szClass db 'Progman',0
Читать статью целиком »
Просмотров: 2351 | Комментариев: 3