Быстрый поиск
Введите фрагмент названия статьи для поиска
Включение регистрозависимых имен файлов на NTFS-дисках
27.04.2021 | Категория: Software | Автор: ManHunter
Включение регистрозависимых имен файлов на NTFS-дисках
Век живи - век учись. Сколько лет работаю с дисками, отформатированными в NTFS, но лишь недавно узнал, что эта файловая система поддерживает регистрозависимые имена файлов, как это "из коробки" работает на *NIX-системах. То есть в Windows можно сделать так, чтобы файлы "FILE.TXT" и "file.txt" считались разными файлами и при этом одновременно существовали в каталоге.
Читать статью целиком »
Просмотров: 2769 | Комментариев: 7
Получение списка программ, закрепленных на панели задач
15.04.2021 | Категория: Образ мышления: Assembler | Автор: ManHunter
В одной из старых статей о работе с панелью задач я написал, что узнать список закрепленных программ можно перебором ярлыков в папке %APPDATA%\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar. Действительно, это можно сделать и так, но лучше делать это правильно, с использованием предназначенных для этого COM-интерфейсов системы. Начнем с описания констант, GUID и интерфейсов, которые нам понадобятся для работы.Code (Assembler) : Убрать нумерацию
- CLSCTX_INPROC_SERVER = 1
- S_OK = 0
- ; Windows Vista
- ; GUID {C3C6EB6D-C837-4EAE-B172-5FEC52A2A4FD}
- IID_IPinnedList dd 0C3C6EB6Dh
- dw 0C837h
- dw 04EAEh
- db 0B1h, 072h, 05Fh, 0ECh, 052h, 0A2h, 0A4h, 0FDh
- ; Windows 7, 8, 8.1
- ; GUID {BBD20037-BC0E-42F1-913F-E2936BB0EA0C}
- IID_IPinnedList2 dd 0BBD20037h
- dw 0BC0Eh
- dw 042F1h
- db 091h, 03Fh, 0E2h, 093h, 06Bh, 0B0h, 0EAh, 00Ch
- ; Windows 10 build 1809+
- ; GUID {0DD79AE2-D156-45D4-9EEB-3B549769E940}
- IID_IPinnedList3 dd 00DD79AE2h
- dw 0D156h
- dw 045D4h
- db 09Eh, 0EBh, 03Bh, 054h, 097h, 069h, 0E9h, 040h
- ; IID_IPinnedList Interface
- struct IPinnedList
- ; IUnknown
- QueryInterface dd ? ; 000h
- AddRef dd ? ; 004h
- Release dd ? ; 008h
- ; IPinnedList
- EnumObjects dd ? ; 00Ch
- Modify dd ? ; 010h
- GetChangeCount dd ? ; 014h
- IsPinnable dd ? ; 018h
- Resolve dd ? ; 01Ch
- IsPinned dd ? ; 020h
- ends
- ; GUID {90AA3A4E-1CBA-4233-B8BB-535773D48449}
- CLSID_TaskbarPin dd 090AA3A4Eh
- dw 01CBAh
- dw 04233h
- db 0B8h, 0BBh, 053h, 057h, 073h, 0D4h, 084h, 049h
- ; IID_IEnumFullIDList Interface
- struct IEnumFullIDList
- ; IUnknown
- QueryInterface dd ?
- AddRef dd ?
- Release dd ?
- ; IEnumFullIDList
- Next dd ?
- Skip dd ?
- Reset dd ?
- Clone dd ?
- ends
Читать статью целиком »
Просмотров: 1078 | Комментариев: 0
Установка двух скринсейверов одновременно
26.03.2021 | Категория: Software | Автор: ManHunter
Установка двух скринсейверов одновременно
Недавно довелось чистить компьютер у хороших знакомых, они где-то словили троян-майнер. На тот момент зловред не определялся антивирусами, но главное не в этом, а в его интересном механизме установки и автозапуска в системе.
Читать статью целиком »
Просмотров: 2171 | Комментариев: 6
Перезапуск приложения в случае его аварийного завершения
23.03.2021 | Категория: Образ мышления: Assembler | Автор: ManHunter
Перезапуск приложения в случае его аварийного завершения
Небольшое дополнение к статье про обработку критических ошибок. Обработать возникшую ошибку, сохранить в лог состояние регистров на момент падения, уведомить пользователя о произошедшем - это хорошо и правильно. Но в Windows есть еще один интересный механизм обработки критических ошибок. Речь идет об автоматическом перезапуске приложения в случае возникновения нештатной ситуации типа необрабатываемого исключения или безответного зависания.
Читать статью целиком »
Просмотров: 1873 | Комментариев: 5
Тестовые имена файлов в Windows
04.03.2021 | Категория: Software | Автор: ManHunter
Тестовые имена файлов в Windows
Можно во многом упрекать компанию Microsoft, но стоит признать, что они делают огромную работу для обеспечения обратной совместимости. Многие программы, написанные еще во времена Windows 95, скорее всего без проблем запустятся даже на современных системах. В Windows используется технология Application Shimming, которая позволяет приложениям, разработанным для более ранних версий ОС Windows, продолжать работу в последней версии Windows. В базах данных Shim содержится несколько тысяч записей определения того, следует ли и как следует регулировать запуск того или иного приложения.
Читать статью целиком »
Просмотров: 1958 | Комментариев: 2