Если перейти по ссылке из статьи, то можно увидеть дату 02/02/2022, а это ровно год назад. Но непонятно, то ли в Microsoft ошиблись в дате в ссылке, то ли в дате в посте. То ли это всё генерила нейросетка (`prompt: пересобери скайп под m1, опубликуй новость в блоге, сделай вид, что мы ещё год назад это опубликовали`)?
Самый "дешёвый" вариант — это собрать исполняемый бинарный файл (.exe) на основе скрипта Python. На каком-то этапе всё равно придётся установить интерпретатор Python, но после сборки можно будет его удалить и оставить только результирующий бинарь.
Несколько инструментов, которые можно использовать для создания исполняемого бинарнаго файла:
Когда прочитал название «Автоматическое заполнение файлами документов Word и подписей к ним с помощью Python и библиотеки docx», то предположил, что "подписи" — это криптографические подписи, а оказалось, что "файлы" — это изображения, а "подписи" — это текстовые описания под изображениями. Более однозначным было бы название «Автоматизация вставки изображений с описаниями в документы Word с помощью Python и библиотеки docx».
Константа userExperience жёстко задана (содержит текст и GUID) и является неотъемлемой частью алгоритма UserChoice в Windows:
const wchar_t* userExperience =
L"User Choice set via Windows User Experience "
L"{D18B6DD5-6124-4341-9318-804003BAFA0B}";
С использованием этой константы (userExperience) в функции GenerateUserChoiceHash формируется строка (FormatUserChoiceString), которая затем хэшируется. В качестве хэша используется MD5, результат дополнительно модифицируется.
Отметка времени (см. комментарий выше о требованиях к отметке времени)
В комментариях к коду также сказано, что алгоритм подходит не для всех версий Windows, в частности, в версиях до Windows 1703 алгоритм не включал отметку времени, но включал путь к исполняемому файлу. Алгоритм должен работать в версиях, начиная со сборки Windows 1703.
Мы уверены в том, что нативные приложения, глубоко интегрированные в операционную систему, гораздо удобнее и приятнее в использовании, чем другие варианты приложений.
После прочтения данного абзаца подумал: «Ого, неужели не очередной Electron?!»
Но несколькими абзацами ниже:
И, наконец, пользовательский интерфейс программы написан на React с использованием возможностей Neon для связи с Rust-бэкендом.
Ок, ок, бэкенд на Rust, классно. Но интерфейс на Electron — это же далеко не те самые «нативные приложения, глубоко интегрированные в операционную систему», которые «гораздо удобнее и приятнее в использовании, чем другие варианты приложений».
Гораздо более вероятно, что корректным переводом слова «typography» является "типографика". Автор в оригинале явно подразумевал работу со шрифтами, а не типографию.
В разделе «Быстрое исполнение простых выражений в PL/pgSQL» приведены результаты выполнения slow_pi() для PG12 и PG13.
Помимо разницы в скорости выполнения есть разница в результатах:
PG12:
3.1415925535898497
PG13:
3.1415925535897915
Код функции slow_pi не меняется, поэтому результат в обеих версиях должен совпадать.
С чем связана разница в результатах работы функции в разных версиях?
Пропустив про "художественные фильмы", но обратив внимание на то, что "за ночь было получено более 30 тысяч изображений", ожидал увидеть на следующей картинке эмоции Саши Грей. Пятница, что ж.
Ещё как вариант — грузиться с внешнего устройства (зажать клавишу C при загрузке).
Но в этом случае необходимо заранее запастись внешним накопителем с «правильной» версией системы.
Не хочу выводить вас на чистую воду, но концепция Autocad практически не менялась с 2000 версии, она лишь обрастала новыми функциями и планомерно обновлялась в части интерфейса.
На мой взгляд, dows именно это и сказал.
А что вы скажите по поводу Archicad, Компас, Solidworks,Tekla они существуют в другой параллельной вселенной или просто решили идти своим самобытным путём?
Могу ответить про ArchiCAD (BIM Server.) и Tekla BIM.
Эти продукты принципиально отличаются от концепции AutoCAD. В первую очередь тем, что основная идеология ArchiCAD — это BIM. И тут Graphisoft (разработчик ArchiCAD) — первопроходец, или как вы выразились «законодатель мод и первоисточник».
Как здорово, что Autodesk не Apple да?
Вот именно, что Autodesk — это не Apple.
Autodesk, несмотря на то, что это колоссального размера компания, не ведёт индустрию за собой, как это делает Apple. AutoCAD — продукт, относящийся к старому подходу к проектированию.
Если уж говорить о продуктах, которые Autodesk позиционирует как мэйнстрим, то это скорее Revit, нежели AutoCAD. Но Revit — это купленный Autodesk'ом продукт, который не является оригинальной разработкой Autodesk.
Из того, что сейчас делает Autodesk, наиболее прогрессивными выглядят, на мой взгляд, мобильные приложения, а не десктоп-версии старых продуктов.
Доступ к API — это не только наиболее значимое нововведение версии 3.5, но и огромный потенциал всей линейки 3.х в целом.
Спасибо, что не останавливаетесь!
Для тех, кто ищет подобную программу, но с открытым исходным кодом, советую посмотреть Process Hacker. Как вариант — того, кто хочет понимать, что к чему, могут заинтересовать исходники.
Если перейти по ссылке из статьи, то можно увидеть дату 02/02/2022, а это ровно год назад. Но непонятно, то ли в Microsoft ошиблись в дате в ссылке, то ли в дате в посте. То ли это всё генерила нейросетка (`prompt: пересобери скайп под m1, опубликуй новость в блоге, сделай вид, что мы ещё год назад это опубликовали`)?
Самый "дешёвый" вариант — это собрать исполняемый бинарный файл (.exe) на основе скрипта Python. На каком-то этапе всё равно придётся установить интерпретатор Python, но после сборки можно будет его удалить и оставить только результирующий бинарь.
Несколько инструментов, которые можно использовать для создания исполняемого бинарнаго файла:
PyInstaller + Auto PY to EXE
cx_Freeze
Когда прочитал название «Автоматическое заполнение файлами документов Word и подписей к ним с помощью Python и библиотеки docx», то предположил, что "подписи" — это криптографические подписи, а оказалось, что "файлы" — это изображения, а "подписи" — это текстовые описания под изображениями. Более однозначным было бы название «Автоматизация вставки изображений с описаниями в документы Word с помощью Python и библиотеки docx».
К сожалению, в заметке не было приведено никаких технических деталей, поэтому пришлось немного поковыряться в репозитории mozilla-central.
Код, отвечающий за установку браузера по умолчанию, находится по пути ./toolkit/mozapps/defaultagent/ в файле SetDefaultBrowser.cpp.
Комментарий в файле
SetDefaultBrowser.cpp
:Хэш изменяется в конце каждой минуты, поэтому проверяем, чтобы хэш был тем же в момент, когда мы закончим запись значения.
Функция
SetDefaultBrowserUserChoice
в файлеSetDefaultBrowser.cpp
вызывает функциюSetUserChoice
, в которой и происходит вся "магия".А за магию отвечает функция
GenerateUserChoiceHash
, которая, в свою очередь, реализована в файле ./browser/components/shell/WindowsUserChoice.cpp.Ключевые функции файла
WindowsUserChoice.cpp
:CheckBrowserUserChoiceHashes
CheckUserChoiceHash
GenerateUserChoiceHash
Константа
userExperience
жёстко задана (содержит текст и GUID) и является неотъемлемой частью алгоритма UserChoice в Windows:С использованием этой константы (
userExperience
) в функцииGenerateUserChoiceHash
формируется строка (FormatUserChoiceString
), которая затем хэшируется. В качестве хэша используетсяMD5
, результат дополнительно модифицируется.Параметрами функции являются:
Протокол или расширения файлов:
https, http, .html, .htm
UserSID
— SID (security identifier) пользователяИдентификатор программы:
FirefoxURL
— для протоколовhttps
иhttp
FirefoxHTML
— для файлов.html
и.htm
Отметка времени (см. комментарий выше о требованиях к отметке времени)
В комментариях к коду также сказано, что алгоритм подходит не для всех версий Windows, в частности, в версиях до Windows 1703 алгоритм не включал отметку времени, но включал путь к исполняемому файлу. Алгоритм должен работать в версиях, начиная со сборки Windows 1703.
Как я понял из комментариев, функционал базируется на исследовании, которое выполнил Christoph Kolbicz, автор утилиты SetUserFTA (Set User File Type Associations). Подробнее об этом можно почитать в блоге Кристофа: SetUserFTA: UserChoice Hash defeated – Set File Type Associations per User or Group on Windows.
Cтилистика журнала ксакеп *дцатилетней давности довольно странно смотрится в 2021-м.
После прочтения данного абзаца подумал: «Ого, неужели не очередной Electron?!»
Но несколькими абзацами ниже:
Ок, ок, бэкенд на Rust, классно. Но интерфейс на Electron — это же далеко не те самые «нативные приложения, глубоко интегрированные в операционную систему», которые «гораздо удобнее и приятнее в использовании, чем другие варианты приложений».
Гораздо более вероятно, что корректным переводом слова «typography» является "типографика". Автор в оригинале явно подразумевал работу со шрифтами, а не типографию.
In Mantis We Trust
Помимо разницы в скорости выполнения есть разница в результатах:
PG12:
PG13:
Код функции slow_pi не меняется, поэтому результат в обеих версиях должен совпадать.
С чем связана разница в результатах работы функции в разных версиях?
Но в этом случае необходимо заранее запастись внешним накопителем с «правильной» версией системы.
По теме:
Startup key combinations for Mac
Starting from an external USB storage device (Intel-based Macs)
How to choose a startup disk on your Mac
Скорее всего, речь об «Inventor», а не об «Inverter»
На мой взгляд, dows именно это и сказал.
А что вы скажите по поводу Archicad, Компас, Solidworks,Tekla они существуют в другой параллельной вселенной или просто решили идти своим самобытным путём?
Могу ответить про ArchiCAD (BIM Server.) и Tekla BIM.
Эти продукты принципиально отличаются от концепции AutoCAD. В первую очередь тем, что основная идеология ArchiCAD — это BIM. И тут Graphisoft (разработчик ArchiCAD) — первопроходец, или как вы выразились «законодатель мод и первоисточник».
Как здорово, что Autodesk не Apple да?
Вот именно, что Autodesk — это не Apple.
Autodesk, несмотря на то, что это колоссального размера компания, не ведёт индустрию за собой, как это делает Apple. AutoCAD — продукт, относящийся к старому подходу к проектированию.
Если уж говорить о продуктах, которые Autodesk позиционирует как мэйнстрим, то это скорее Revit, нежели AutoCAD. Но Revit — это купленный Autodesk'ом продукт, который не является оригинальной разработкой Autodesk.
Из того, что сейчас делает Autodesk, наиболее прогрессивными выглядят, на мой взгляд, мобильные приложения, а не десктоп-версии старых продуктов.
Спасибо, что не останавливаетесь!
* Хэш sha1, md5