Быстрый поиск
Введите фрагмент названия статьи для поиска
Пересборка инсталлятора Punto Switcher
30.05.2009 | Категория: Темная сторона Силы | Автор: ManHunter
Установка Punto Switcher
Программа Punto Switcher - это автоматический переключатель русской и английской раскладок клавиатуры. Когда вы забываете переключить раскладку с русской на английскую и наоборот, то вместо "Windows" получается "Цштвщцы", а вместо "молоко" - "vjkjrj". Punto Switcher это исправит - раскладка будет переключаться автоматически. Сама программа исключительно полезная, но после покупки ее Яндексом, в дистрибутиве стало слишком много чужеродного. Сам дистрибутив потяжелел почти до 3 мегабайт, в процессе инсталляции навязчиво предлагает сделать Яндекс домашней страницей, установить Яндекс.Трояна и вообще весь стал ходячей рекламой. Это плохо, значит будем исправлять все недоработки авторов.
Читать статью целиком »
Просмотров: 27940 | Комментариев: 42
Готовим окрошку по-уральски
29.05.2009 | Категория: А еще я туда ем! | Автор: ManHunter
Окрошка
Наконец-то наступили жаркие дни, можно приготовить окрошку со свежими овощами. Рецептов окрошки много, я предпочитаю уральский вариант, с квасом и хреном.
Читать статью целиком »
Просмотров: 6815 | Комментариев: 13
Концерт Doro Pesch в "Точке"
27.05.2009 | Категория: Жизнь в оффлайне | Автор: ManHunter
Концерт Doro Pesch в "Точке"
Приезд Doro Pesch в Москву я ждал долго и был очень рад, когда наконец на сайте "Точки" появился анонс концерта и афиша со знакомой фотографией. На этот раз подсуетился пораньше, удалось купить обычный билет в партер.
Читать статью целиком »
Просмотров: 6065 | Комментариев: 6
Всплывающее окно на Ассемблере
26.05.2009 | Категория: Образ мышления: Assembler | Автор: ManHunter
Всплывающее окно - удобный способ информировать о том, что ваша программа выполнила какое-то действие, не требующее немедленного вмешательства пользователя, но достаточно важное, чтобы он об этом узнал. Это может быть сообщение о завершении закачки файла, получении нового письма, завершении длительных вычислений и т.п. Красивый эффект получается, когда информационное окно плавно выезжает из-под таскбара. Простого перемещения окна тут будет недостаточно, так как придется учитывать положение таскбара и всяких других панелей, которые резервируют под себя часть рабочего стола. Поэтому надо сперва получить размер видимой области экрана с учетом различных панелей инструментов и размеры самого всплывающего окна. Затем окно перемещается по одному пикселу в нужном направлении с учетом положения панелей, а размер его видимой части увеличивается на один пиксел в противоположную сторону. Это делается при помощи функции MoveWindow. Лучше всего сам эффект всплытия реализовать на стадии инициализации окна по сообщению WM_INITDIALOG, но в этом случае придется принудительно показывать окно функцией ShowWindow и обновлять его содержимое функцией UpdateWindow после каждого сдвига. Рекомендуются стили окна без заголовка и поверх всех окон, как сделано в прилагаемом примере. Атрибут прозрачности для всплывающих окон лучше не использовать, так как при анимации появляются заметные искажения.Code (Assembler) : Убрать нумерацию
- ; Сегмент данных
- section '.data' data readable writeable
- coord RECT ; Размеры окна
- screen RECT ; Размеры экрана
- ; Сегмент кода
- section '.code' code readable executable
- ...
- ; Обработчик сообщения WM_INITDIALOG
- wminitdialog:
- ; Получить размер рабочей области экрана
- invoke SystemParametersInfo,SPI_GETWORKAREA,NULL,screen,FALSE
- ; Получить размер окна
- invoke GetClientRect,[hwnddlg],coord
- ; Вычислить отступ от правой границы экрана
- mov eax,[screen.right]
- sub eax,[coord.right]
- dec eax
- mov [screen.right],eax
- ; Высота окна
- mov ecx,[coord.bottom]
- ; Цикл всплытия окна
- @@:
- ; Сохранить значение счетчика
- push ecx
- ; Заполняем стек для MoveWindow
- push TRUE
- mov eax,[coord.bottom]
- sub eax,ecx
- push eax
- push [coord.right]
- mov ecx,[screen.bottom]
- sub ecx,eax
- push ecx
- invoke MoveWindow,[hwnddlg],[screen.right]
- ; Так как сейчас только инициализация, то придется принудительно
- ; показать окно и обновить его содержимое
- invoke ShowWindow,[hwnddlg], SW_SHOW
- invoke UpdateWindow,[hwnddlg]
- ; Небольшая пауза
- invoke Sleep,2
- ; Восстановить счетчик
- pop ecx
- loop @b
- ...
Читать статью целиком »
Просмотров: 6082 | Комментариев: 2
Internet Explorer 8 и мета-тег X-UA-Compatible
23.05.2009 | Категория: Web-мастеру и не только | Автор: ManHunter
С выходом финальной версии Microsoft Internet Explorer 8 web-мастерам добавилось головной боли из-за совместимости верстки под новый браузер. К счастью, в IE8 введены официально документированные режимы совместимости со старыми версиями Internet Explorer, по официальной версии "предназначенные для упрощения перехода с устаревших стандартов на новые". Говоря простым языком, пока web-мастера перекраивают свои сайты под IE8, для пользователей с новым браузером они могут временно поставить на страницы следующий мета-тег:Code (HTML) : Убрать нумерацию
- <meta http-equiv="X-UA-Compatible" content="IE=7" />
Обратите внимание, что мета-тег X-UA-Compatible должен быть помещен в HEAD страницы самым первым по счету, если его поставить после любого другого мета-тега, например, после иконки или заголовка страницы, то он будет просто проигнорирован. Не забывайте про эту особенность, когда будете верстать свой сайт. Как вариант, мета-тег X-UA-Compatible можно использовать для проверки отображения сайта под разными версиями Internet Explorer, не устанавливая сами браузеры, а имея только один установленный IE8.
Просмотров: 9781 | Комментариев: 4