게임이나 응용 프로그램에 패치를 만들려면 어떤 지식이 필요합니까?

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

  •  04-07-2019
  •  | 
  •  

문제

나는 소프트웨어 공급 업체가 응용 프로그램이나 게임을 배송 할 수있는 방법을 항상 신비화 한 다음 나중에 이전 빌드의 동작을 변경하는 다른 실행 파이브 세트를 제공했습니다. 이게 어떻게 끝났어? 원래 응용 프로그램과 패치가 어떤 종류의 규칙을 준수해야합니까? 아니면 패치가 원래 실행 파일로 기어 다니고 조립 정보를 변경합니까? 이진 파일에 대한 지식이 바이트 레벨에 대한 지식이 필요합니까?

도움이 되었습니까?

해결책

내가 본 두 가지 주요 방법이 있습니다. 많은 프로그램은 런타임에 동적으로로드되는 다수의 작은 부품으로 구성되며, 종종 이러한 파일은 단순히 최신 버전으로 대체됩니다. 업데이트는 종종 비교적 적은 수의 파일에만 영향을 미치기 때문에 패치는 전체 애플리케이션의 작은 하위 집합 일 수 있습니다. 더 큰 모 놀리 식 응용 프로그램에서 사용한 다른 방법은 일종의 "이진 차이"를 사용하여 실행 가능한 코드를 실제로 변경하는 것입니다. 이 접근법의 단점 중 하나는 각 증분 업데이트를 수행하지 않고 이전에 여러 개정판에서 새 버전으로 업그레이드하는 것이 더 어렵다는 것입니다.

다른 팁

나는 대부분의 "패치"가 일부 교체 파일이라고 생각합니다.

그러나 두 바이너리 파일을 비교하고 차이점을 결정하며 서로 변경할 편집 명령 세트를 만들 수 있습니다. 예를 들어 UNIX 유틸리티 "diff"는 텍스트 파일에 대해이를 수행 할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top