De quelles connaissances avez-vous besoin pour créer un correctif pour votre jeu ou votre application?

StackOverflow https://stackoverflow.com/questions/237331

  •  04-07-2019
  •  | 
  •  

Question

J'ai toujours été mystifié de la façon dont les éditeurs de logiciels peuvent livrer leur application ou leur jeu, puis de fournir ultérieurement un ensemble différent de fichiers exécutables qui modifient les comportements de la version précédente. Comment est-ce fait? Est-ce que l'application originale et le correctif doivent adhérer à une sorte de règle? Ou bien le correctif s’infiltre-t-il dans l’exécutable d’origine et modifie ses informations d’assemblage? Est-ce que cela nécessite une connaissance du fichier binaire au niveau octet?

Était-ce utile?

La solution

Il y a deux méthodes principales que j'ai vues. De nombreux programmes sont composés d'un certain nombre de petites pièces chargées dynamiquement au moment de l'exécution. Souvent, ces fichiers sont simplement remplacés par des versions plus récentes. Étant donné que les mises à jour ne concernent souvent qu'un nombre relativement petit de ces fichiers, le correctif peut constituer un petit sous-ensemble de l'application entière. L'autre méthode, que j'ai vue utiliser avec des applications monolithiques plus grandes, consiste à changer le code exécutable en utilisant une sorte de "diff binaire". L’un des inconvénients de cette approche est qu’il est plus difficile de prendre en charge la mise à niveau d’une nouvelle version à partir de plusieurs versions antérieures sans avoir à effectuer chaque mise à jour incrémentielle.

Autres conseils

Je soupçonne que la plupart du temps, "correctifs". ne sont que quelques fichiers de remplacement.

Il est cependant possible de comparer deux fichiers binaires, de déterminer leurs différences et de créer un ensemble de commandes d’édition qui changeront l’un en l’autre. L'utilitaire Unix & diff; diff " peut le faire pour des fichiers texte, par exemple.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top