Вопрос:
Скажите, а невозможность загрузки в 64bit-процесс 32bit DLL - фатальна, или же возможны какие-то хаки, недокументированные обходные пути?
Отвечаю здесь, так как ответ получился слушком длинным.
Во-первых, про любые недокументированные возможности меня спрашивать бесполезно. Даже если такая возможность существует, я всё равно о ней не расскажу. Этому есть несколько причин, включая очевидные вещи вроде NDA, законе об авторском праве и т.д. Еще одна причина, почему я не горю желанием это делать, - это то, что раскрывая детали реализации того или иного компонента, я тем самым лишаю этот компонент возможности развиваться и улучшатся в следующих версиях.
(more…)
Posted at 10:07 pm •
Наткнулся на вопрос на форуме iXBT. В Windows SDK помимо флагов KEY_WOW64_64KEY и KEY_WOW64_32KEY определена маска KEY_WOW64_RES. Зачем она нужна?
#ifndef KEY_WOW64_RES
#define KEY_WOW64_RES (KEY_WOW64_64KEY | KEY_WOW64_32KEY)
#endif
Ответ: по большому счету она не нужна. В коде Wow64 она используется для выделения флагов KEY_WOW64_64KEY и KEY_WOW64_32KEY из маски доступа для дальнейшей обработки. Указывать оба флага (и KEY_WOW64_64KEY и KEY_WOW64_32KEY) при вызове RegCreateKeyEx, RegOpenKeyEx или RegDeleteKeyEx нельзя, так что приложениям эта маска ни к чему.
Posted at 1:47 pm •
Спаммеры и любители лёгких денег в Интернете повадились оставлять комментарии-пустышки с единственной ссылкой на какой-нибудь левый сайт. Цель этого мероприятия, как я понимаю, поднять PR рейтинг этого сайта. Причем, судя по осмысленности текста, оставляют их явно живые люди, а не боты. Или боты нынче тест Тюринга научились проходить. Так или иначе, испортить день спаммеру - наша священная обязанность. Теперь в форме комментария непустое поле «Website» будет авторизироваться как OpenID URL.
Posted at 10:07 pm •
Вслед за публикацией спецификаций, описывающих формат файлов Microsoft Office, Joel Spolsky написал неплохую статью, объясняющую почему формат этих файлов настолько сложен и, на первый взгляд, специально запутан до невозможности.
A normal programmer would conclude that Office’s binary file formats:
- are deliberately obfuscated
- are the product of a demented Borg mind
- were created by insanely bad programmers
- and are impossible to read or create correctly.
Если коротко, то проблема в том, что эти форматы имеют длинную историю и при их разработке преследовались совсем другие цели нежели преследовались бы при разработке формата «офисных» файлов сейчас. Это, кстати, касается и OOXML, так как этот формат по-прежнему должен поддерживать практически все возможности, которые предоставляют бинарные форматы.
Выводы в статье тоже заслуживают внимания. Если вы не пишете клон Microsoft Office (иными словами OpenOffice или StarOffice), то вполне вероятно, что идея реализовать работу с «офисными» форматами в полном объеме не слишком хороша. Вместо этого стоит либо воспользоваться OLE автоматизацией, которую приложения Microsoft Office вполне поддерживают, либо стоит выбрать формат по проще, но, при этом, совместимый с офисом.
Posted at 3:35 pm •
Оказалось, что это была ошибка в документации. Её поправили и посмотрите, что получилось.
(more…)
Posted at 9:06 pm •
Некоторое время назад я занимался жутко интеллектуальной деятельностью – ручной проверкой результатов автоматического теста, проверяющего корректность работы популярных приложений на данной сборке операционной системы. Проще говоря, этот тест устанавливает OS, затем ставит приложение из списка и проверяет базовую функциональность на предмет не поломалось ли чего. Если что-то идет не так, то тест сообщает о найденных проблемах. Такой себе regression testing для самой OS.
(more…)
Posted at 12:06 pm •
Это уже совсем не новость, конечно. 14-ого января Messenger пролетел в двух сотнях километров от поверхности Меркурия. Это первое посещение планеты за более чем 30 лет со времен полёта Mariner 10. В отличие от своего предшественника, Messenger должен выйти на орбиту Меркурия 18 марта 2011 года, выполнив еще два пролёта в октябре 2008 и сентябре 2009 года. Кроме всего прочего, планируется полностью картографировать поверхность с разрешением 250 метров на пиксель. Будет в Google Earth слой Mercury, как пить дать.
Сайт миссии: http://messenger.jhuapl.edu/the_mission/index.html.
Posted at 10:34 pm •