보안세상

WINAPI 파일 Update 본문

공부

WINAPI 파일 Update

똔민 2015. 10. 7. 17:30
반응형

어떤 프로그램이든 파일을 업데이트하는 루틴은 굉장히 중요합니다.


버그 하나 없는 프로그램은 없고 문제가 발생했을 때 빠르게 대처하기 위한 유일한 방법이기도 하기 때문입니다.

제가 업데이트 하는 방법은 Rename 하는 방법입니다. 가장 보편적인 방법이 아닐까 생각합니다.

저는 컴파일 시에 항상 파일명뒤에 B를 붙여줍니다. "xxxB.exe" 이런식으로 말이죠.


- 순서

1. Update모듈이 파일을 설치

2. 버전을 비교하여 기존에 사용되고 있던 파일보다 설치된파일의 버전이 높으면 3번 아니라면 업데이트 진행중지

3. xxxC.exe 파일이 존재하는지 확인 후 xxx.exe 파일을 xxxC.exe로 변경

4. xxx.exe 파일이 존재하는지 확인 후 xxxB.exe 파일을 xxx.exe로 변경

5. xxxB.exe 파일이 존재하는지 확인 후 xxxC.exe 파일을 xxxB.exe로 변경


이때 중요한것은 절대로 이름을 변경하려는 파일이 존재하면 안된다는것입니다. rename은 파일이 존재하면 변경이 불가능하기 때문이죠.

저는 기존 파일을 남겨둡니다. B파일 형태로요. 하지만 이것이 싫은 사람은 xxx.exe파일이 xxxC.exe가 되었을때 삭제하는것도 괜찮다고 생각합니다.


- B파일을 남겨두는 이유

기존에 사용되고 있는 파일을 중지할 수 없는 상황이 있을 수 있습니다. 이런 경우엔 B 파일이 필요합니다.

한 박자 느린 패치라고 볼 수도 있는데요. 컴퓨터를 껐다가 키거나 프로그램을 사용자가 완전히 종료한 후 다시 재기동 될 때 패치 된 내용이 적용되게끔 하는 것이죠.

실행 중인 파일을 굳이 종료시키고 다시 시작할 필요가 없을 때 좋습니다. 

반응형
Comments