Важно помнить, что имя файла, начинающееся на точку и не содержащее расширения («.toprc», например), Windows считает одним расширением без имени. Тоесть к имени «.txt» она прилепит иконку текстового файла и откроет в Блокноте.
Тег windows в блоге Linda-chan
Забавно, что на машине установлено четыре гига памяти, 512 съедает видео (изначально на автомате кушало триста, но я указала ручками). Когда стояла XP, она показывала, что памяти на машине два с половиной гига. С чем это было связано, и кто кроме видео её кушал, я так и не поняла. Но Нанами x64 показала, что памяти – четыре гига, а доступно – три с половиной.
Купила на свалке комп за три тысячи, решила на него что-нибудь поставить для проверки. Начать решила со свежего Минта. С флэшки загрузилась только со второго раза – с первого раза Xfce повисла на этапе рисовки рабочего стола. Тормозило жесть как, но я всёже стартовала установку. Где-то в самом конце сетап сообщил, что случилась критическая ошибка и тихо умер. Разумеется, это не грузилось. Решила перейти к Нанами. Оказалось, что под рукой ни одного проверенного исошника. С трудом нашла какой-то, он даже поставился, но после первого старта система сразу же зашутдаунилась и начала бесконечно перезагружаться даже не показывая заставку. В следующие разы установка прерывалась с сообщением, что что-то сломалось при записи загрузчика. Нашла проверенный диск, решила снять образ, но на рабочей машине он даже читаться не захотел, а на купленном компе привода нет (и некуда пихать). Поискала ещё и нашла исошник с XP SP3. Ради прикола закатала на флэшку и решила попробовать установить. И что же в итоге? После нескольких часов поисков всяких хитрых дров (попутно узнала об одном прикольном установщике-детекторе), у меня комп с работающей XP. Это проклятье.
// Я склонна винить во всём MTV^W UEFI.
Жизнь этого пойнтожуйкера – это история о том, как установить Linux в двойной загрузке с Windows, убить при этом Windows, не суметь её восстановить и остаться навсегда на Linux.
Рэймонд Чен делится воспоминаниями о реестре в Win16.
https://blogs.msdn.microsof.../20120521-00/?p=7573
// Да, когда-то ваши любимые «регистры Windows» были проще и опциональнее, нежели сейчас. При чём, когда они переписали реестр с нуля для Win32, в документации Win32 SDK всё равно осталось много устаревшей информации, когда описание конкретных функций говорит об одном положении дел, а обзор – о другом.
Давайте погадаем на кофейной гуще!
Ошибка приложения : Инструкция по адресу "0x0125fbdb" обратилась к памяти по адресу "0x01c84d84". Требуемые данные в память не помещены из-за ошибки ввода/вывода "0x75b4b11c".
SMART у диска в полном порядке, даже в системном журнале ничего про ошибки страниц нет. И что теперь? Бежать в магазин за новым винтом? Или всё же за памятью?
Наконец-то кто-то объяснил, как выковыривать сообщения, отправляемые процессами через OutputDebugString()!
https://www.codeproject.com...DebugString-capturer
Теперь бы ещё понять, почему до первого запуска сисинтерналовского DebugView вызов OutputDebugString() без подключенного отладчика приводит к исключению, а после первого запуска – нет. Ну тоесть ставим голую винду, делаем в программе OutputDebugString() – ловим исключение. Запускаем DebugView, перезагружаемся для верности, делаем в программе OutputDebugString() – исключений больше нет. Ну и хотелось бы знать, почему IsDebuggerPresent() выдаёт TRUE, если запущен DebugView, если на деле он ничего не отлаживает, а просто читает буфер.
Пользователи полюбили Windows XP за проверенный временем интерфейс, который не сильно изменился с Windows 98. Также на месте осталась Панель задач и кнопка «Пуск».
Ранее я жадловалась на то, что у меня winlogon.exe то и дело пиликает системным звуком, когда копируешь что-либо в буфер обмена. С нового года (вот так совпало), ситуация стала печальнее: бипы раздовались то и дело в рандомные моменты времени, и не понятно было, что их вызывает. Думала, какие-то скрипты запускаются в планировщике или там где-то в своих программах забыла убрать отладочный код. В итоге всё пришло к тому же winlogon.exe. Выяснить, что же происходит, мне не удалось, но по крайней мере я нашла способ веруть тишину в систему. Вот он:
https://gist.github.com/Lin...f8376ae03caa5447409d
REG файл устанавливает пустоту для пары системных звуков winlogon.exe. При этом делается это для текущего пользователя и для трёх системных – winlogon.exe работает од одним из них, так что я сделала так, чтобы наверняка. Да, в Windows прикольные звуки можно поставить и для всяких Local System.
The proof of concept program edits keys in the HKEY_CURRENT_USER registry hive, so it must be run by the user whose life you are trying to make miserable (or by someone who has permission to make that user's life miserable).
https://blogs.msdn.microsof...0190109-00/?p=100665
Как Рэймонду Чену вштырило это самое «Miserable»!
Слежка в Windows 10 одним камментом.
https://habr.com/post/401059/#comment_18029907
// В ответах, разумеется, «На благо пользователя», «Все так делают» и прочие ачотакова.
В Windows 98 я вырубала панель инструментов у консоли, чтобы она выглядела как в NT (и действительно, с непривычки эффект был выдающимся). В NT же время от времени хочется поностальгировать и врубить панель инструментов. Но увы...
Мало кто знает (а кто знает, тот часто забывает), что при перетаскивании файла или ещё чего из, скажем, проводника в окно какой-нибудь программы, не нужно окна двигать туда-сюда, подготавливая плацдарм, можно нажать Alt+Tab чтобы переключиться на окно этой программы.
Рэймонд Чен объясняет, почему сообщения об ошибках редко сообщают о том, какая ошибка случилась.
https://blogs.msdn.microsof...0181203-00/?p=100375
Решила ещё раз попробовать Private Desktops в Windows 7 и узнать, чего она там не работает. Ну, то что Win+1 и прочие цифры забиндены Проводником на прибитые на таскбар программы, при чём скопом со всеми модификаторами (Win+Ctrl+1, Win+Alt+1 etc), я выяснила в прошлый раз. Поставила более конвенционные Win+Q для первого рабочего стола (дефолтного), Win+W для второго, перезапустила программу. Жму Win+W – переключилось. Жму Win+Q – не реагирует. Не работает переключение? Запустила екзешник программы с параметром «/Switch 0» – переключилось. Вернулась на второй рабочий стол, снова жму Win+Q. Там запущена консоль, и я вдруг заметила, что эта самая Q в ней набирается. Тоесть, хоткей не работает в принципе. Короче, если в XP глобальные хоткеи работали на всех рабочих столах в пределах текущей оконной станции (кроме рабочего стола блокировки системы), то, похоже, дальше они стали заизолированы на конкретных рабочих столах. Тоесть если на рабочем столе X программа создала окно и следом зарегистрировала хоткей с его манипулятором, то сообщения WM_HOTKEY будут прилетать только если клавиши были нажаты, пока рабочий стол X был активен. А если система переключится на рабочий стол Y, то сообщения прилетать не будут. Пичалька, придётся думать, как программу обновить. Есть вариант с хуками, но я хуки зависят от разрядности процесса, в который библиотека будет внедряться, а я пока в этом не разбиралась =_=
Ну и о будущем.
(Yes, I'm being unfair and ignoring backward compatibility. In my mind, as a user, if a program requires backward compatibility it's because it's being poorly maintained and is probably not evolving with the new OS releases, and I'll vote with my feet and move on to something that keeps up with the days.)
[Translation: Every application vendor who does not issue an update to their program the same day the OS is released is a lazy bum. -Raymond]
А вот тут рассказывается о том, почему в Висте перестали показываться иконки Win16 программ:
https://docs.microsoft.com/.../cc462815(v=msdn.10)
Я знала, что народ любил всюду использовать Win16 DLL с расширением ICL (например, Microangelo так делал), но не знала, как система эти иконки использует. Думала, что там какие thunk'и, вызывающие Win16 функции, а оказалось, что просто некий велокод парсит блоки ресурсов и вытаскивает данные иконок, которые уже подсовывает Win32 функциям.
Вспомнила я тут цитату про «криворучек из Microsoft, запихнувших PNG сырым потоком в ICO файлы», ну и озадачилась поиском информации на тему. В итоге нашла у Рэймонда Чена серию постов про иконки, в том числе и по интересующей меня теме:
https://blogs.msdn.microsof...20101018-00/?p=12513
https://blogs.msdn.microsof...20101019-00/?p=12503
https://blogs.msdn.microsof...20101021-00/?p=12483
https://blogs.msdn.microsof...20101022-00/?p=12473
Жаль, не раскрыта тема двух прозрачных цветов: просто прозрачного и инвертируемого, которым в старых программах увлекались. Да, это было давно, и всё же.
Оказывается, в Windows 10 (возможно, ещё в Windows 8) провели редизайн пробной страницы печати. А то даже в Нанами она от страницы в Windows 9x отличалась только логотипом системы.
Поставила, наконец, поц-рэди™ на XP. Набежало больше сотни апдейтов. Апгрейд найт медленно перешла в апгрейд дэй. Но в итоге вроде бы ничего не отвалилось. Версия на рабочем столе поменялась, а ещё IE8 научился ходить на сайт на Апаче под восемнадцатой бубунтой. Правда, SNI это его не обучило. И галочки «TLS 1.1» и «TLS 1.2» не появились в настройках IE, хотя в реестре всё прописано.