Меня всегда интересовало, как работают программные исправления. Кажется, что многие программы просто выпускают новые версии своих двоичных файлов, которые необходимо устанавливать поверх старых версий, но некоторые программы (в частности, операционные системы, такие как Windows), похоже, могут выпускать очень небольшие исправления, которые исправляют ошибки или добавляют функциональность к существующим. программное обеспечение.
В большинстве случаев патчи, которые я вижу, не могут заменить целые приложения или даже небольшие файлы, которые используются в приложениях. Мне кажется, что реальный двоичный файл модифицируется.
Как на самом деле реализуются такие патчи? Может ли кто-нибудь указать мне на какие-либо ресурсы, объясняющие, как это работает, или это так же просто, как замена небольших компонентов, таких как связанные библиотеки, в приложении?
Мне, вероятно, никогда не понадобится выполнять развертывание таким образом, но мне любопытно узнать, как это работает. Если я правильно понимаю, что исправления действительно могут изменять только части двоичных файлов, возможно ли это сделать в .NET? Если это так, я бы хотел изучить его, поскольку это фреймворк, с которым я наиболее знаком, и я хотел бы понять, как он работает.