창조유저그룹-커즈닷컴
Window close
ID :     PASS :   
   
  처음으로
  창조
  창조 소개
창조 다운로드
CUGz.com 소개
온라인 도움말
  커뮤니티
  가입인사
자유게시판
Q/A게시판
TIP/TECH
열린강좌
자주하는질문
아이디어게시판
  자료실
  소스자료실
프로그램자료실
기타자료실
명예의 전당
이미지 자료실
  지원/기타
  표준용어재정
구글 웹서치  
관리자 전용


LIST ALL
Posted by 최재일2004-09-13 01:54:40, Hit : 7940
대박로또에 적용된 자동업데이트 알고리즘..
Homepage : http://lotto.pc.to
Post URL : http://cugz.sjworks.net/bbs/zboard.php?id=open_lec&no=55

리즈류님의 부탁으로 인해 대박로또에 적용된 자동업데이트 알고리즘에 대해 써봅니다. ^^
많은 파일들이 존재하는 프로그램에 적용시키면 유용할 듯 싶네요..
열심히 써서 올리는 순간, 자동로그인해제로 인해
글은 안올라가고 그 글들은 사라져서 다시 쓰고 있습니다.. ㅠ^ㅠ
그래서 아까보다 훨씬 간단명료할 순 있지만, 알려드릴껀 다 알려드리지요..


설명시작~!! 전, 대박로또 환경문 파일 구조에 대해 간단히 적죠..


--------------------------------------------------------
 구버전 환경문 파일          최신버전 환경문 파일
--------------------------------------------------------
autoup.exe[+]01470           autoup.exe[+]01470   <-- 이 파일은 무조건 첫번째줄에 있어야 함
filetr32.dll[+]02428              number.txt[+]00093
lotto.exe[+]02530               lotto.exe[+]02530
lotto.hlp[+]02530                lotto.hlp[+]02530
number.txt[+]00093            remove.bat[+]01000
remove.bat[+]01000           temp[*]01000
remove.dat[+]01721           remove.dat[+]01721
temp[*]01000
--------------------------------------------------------


자, 이렇게 구버전 환경문 파일이 있고, 최신버전 환경문 파일이 있습니다.
다들 잘 아시겠지만, 프로그램이 실행되면서 웹에서 최신버전 환경문 파일을 다운받아 구버전 환경문 파일과 서로 버전 비교를 해서 최신버전이 있으면 업데이트하는 방식입니다..
그런데, 문제는 위에서 보듯이 구버전 환경문과 최신버전 환경문은 파일순서가 다르거나, 구버전에 있는 파일이 최선버전에선 없고, 최신버전에는 있는 파일이 구버전에는 없을 수 있습니다.
그러니, 파일 버전 비교시 먼저 해야 할 작업은 서로 파일명을 비교하여 파일명이 같은 것끼리 버전검사를 해야합니다.
그리고 구버전에는 없는데 최신버전에는 있다면, 버전업되면서 새로운 파일이 추가된거니 무조건 다운받아 설치해야하고, 최신버전에는 없는데 구버전에는 있다면 버전업되면서 파일이 삭제된 거니 무조건 삭제해야합니다..


자~ 환경문 파일 구조는 이쯤에서 맞히고, 이제 업데이트 작업 순서 설명을 하겠습니다..


① 대박로또가 실행되면서 웹에서 최신버전 환경문을 다운받습니다. 그래서 "autoup.exe"은 일단 넘어가고, 그 아래 파일부터 구버전 환경문 파일과 파일명이 같은 것끼리 버전비교를 합니다. 그러다, 최신버전이면 업데이트를 해야겠죠?
사용자에게 업데이트할꺼냐고 질문창을 띄운 후, [예]를 선택하면, 업데이트 시작해야 하는데  대박로또를 종료시켜야 업데이트가 제대로 수행됩니다. 왜냐면 사용중인 파일은 안 지워지므로.. 상식이죠? ^^;
그럼 사용자가 [예]를 선택하면 가장 먼저, 아까 그냥 넘어간 환경문 파일의 가장 첫줄에 있는 "autoup.exe"을 버전검사 후, 최신버전이면 다운받아 교체 후 다음 단계로, 아니면 바로 다음 단계로 넘어갑니다.
"autoup.exe"은 라이브 업데이트기 프로그램입니다.

*참고 : 만약, 구버전 환경문이 아예 없다면 무조건 다음 단계로 넘어가서 존재하는 파일들은 모두 지우고, 최신정보 환경문 파일에 있는 모든 파일을 다운받아 설치하면 됩니다. 아니면 구버전 환경문 파일이 없다고 에러메시지를 띄우고 종료해도 상관없구요.. ;;


② 대박로또는 종료되고 "autoup.exe"를 실행시켜 라이브 업데이트기가 실행됩니다.
라이브 업데이트기는 위 ①번과 같은 방법으로 최신버전 환경문과 구버전의 환경문의 파일명이 같은 것끼리 버전검사를 시작해서 최신버전이면 다운받아 교체하는 작업을 시작합니다.
이때, "autoup.exe"은 이미 업데이트를 했으므로, 그냥 넘어갑니다.
작업이 끝났으면 다음 단계로 넘어갑니다.


③ 구버전 환경문 파일에는 있는데 최신버전 환경문 파일에는 없으면 버전업되면서 해당 파일이 삭제된 것이니 그 파일은 무조건 지웁니다.


④ 최신버전 환경문 파일에는 있는데 구버전 환경문 파일에는 없으면 버전업되면서 해당 파일이 추가된 것이니 그 파일은 무조건 다운받아 설치합니다.


⑤ 모든 업데이트 과정이 끝났습니다.. 환경문 파일을 최신버전으로 교체 후, 라이브 업데이트기는 종료되고 다시 대박로또가 실행되면 됩니다..


휴~ 이제 다 썼네요.. 의문사항이 있으시면 코멘트달아 주세요..
전 이만 자러 가야겠네요~ 이만, 휘리릭~ ^^


리즈류   2004-09-13 PM 9:28:57  
감사합니다.. 차근차근 읽어보아야겠네요^^
ps.이진백   2004-09-14 AM 8:03:23  
환경문에 의존하는 수도 있습니다.
[copy]
1=http://kin.com/kin.exe

[delete]
1=kin.exe
이런식으로 환경문을 구성하여 읽어 실행하는것도 괜찮죠.
ps.이진백   2004-09-14 AM 8:04:45  
일단 업데이트 실행 전에 업데이트 기기를 다운받아 실행합니다.
그러면 만사 OK죠.

네이버는 트래픽 제한이 없는듯 하네요.
리즈류   2004-09-14 PM 4:10:39  
아, 질문있습니다. 어떻게해야 업데이트기기와 본 프로그램을 연동(이라고 해야하나..)시킬 수 있죠?
천호성   2004-09-14 PM 5:50:14  
연동이요?ㅎ 따로 업데이트 프로그램을 하나 제작하신 후
메인 프로그램에서 업데이트 버튼을 클릭 했을 시 메인 프로그램이
종료되면서, 업데이트 프로그램이 실행되도록 하시면 됩니다.

물론, 창조에서 간단히 실행해 명령어와 경로지정 명령어를 통해서
하실 수 있습니다.

예전에 지우개 EXPERT 업데이트 기능이 그렇게 구현되었구요.ㅎ
지우개 Expert 업데이트 형식도 괜찮다고 봅니다.

심파일이나 마이폴더넷에서 지우개 3.0받으셔서 업데이트 해보세요.
지원은 중지하였지만, 업데이트는 이루어지고 있습니다.ㅎ
아마 도움이 되지 않을까 싶네요.
최재일   2004-09-14 PM 8:01:45  
단순히 파일 1~3개정도 업데이트할꺼면 위 알고리즘보단
프로그램 실행시 버전을 확인하여 최신버전이 검색되면
걍 업데이트기가 존재하는 파일을 몽땅 지우고,
새로운 버전을 다운받아 설치하는게 낳죠..
최재일   2006-05-07 PM 11:23:57  
* 추가적 설명 *
-----------------------------
autoup.exe[+]01470
-----------------------------
여기서 autoup.exe 부분은 파일명을 나타내고,
[+] 표시면 파일이고,
[*] 표시면 폴더을 뜻합니다.
마지막 부분 01470 이 숫자는 해당 파일의 버전을 나타냅니다.
LIST ALL               GO TO THE TOP


N
   Subject
Posted by
Date
H
119
   [강좌#7] 창조 오류 해부 2탄 (일부작성중) [1]
ps.이진백 2004/05/19  20969
118
     [강좌#7.5] 창조 오류 해부 2.5탄 (나머지)
지상현 2010/06/02  11539
117
   #1 비트 연산이란? - 진수 표기법
지상현 2005/10/09  11393
116
   [강좌#9-2] 이노셋업의 오른팔 istool 초보자 수련 - 언어 [1]
ps.이진백 2004/07/04  11142
115
   창조와 ActiveX (2)
지상현 2007/08/11  10792
114
   창조입문. :창조란 무엇인가?&CDP만들기: [9]
변혁수 2002/09/06  9941
113
   몇가지 유용한 정보 모음 [5]
최재일 2006/01/13  9363
112
   [강좌#9-1] 이노셋업의 오른팔 istool 초보자 수련 [4]
ps.이진백 2004/07/04  9294
111
   [강좌#1] 프로그램 추가/제거를 제어판에서! [3]
ps.구루 2003/01/28  8451
110
           [3강] 타원을 그려보자! (원 포함)
박종훈 2009/10/24  8369
109
   창조와 ActiveX (1)
지상현 2007/08/07  8278
108
   창조 첫 시작시 명령어 익혀보자~ [4]
박종훈 2006/12/23  8044

   대박로또에 적용된 자동업데이트 알고리즘.. [7]
최재일 2004/09/13  7940
106
   환경파일로 파워유저되어보자![개정판] [예제/사용!] 2 [6]
박종훈 2007/01/02  7766
105
       [1강] 직선을 그려보자!
박종훈 2009/10/24  7723
104
   [강좌#8] 자동업데이트 구현 [2]
ps.이진백 2004/06/22  7708
103
   창조입문 : 메모장 만들기 [2]
신용주 2008/12/20  7552
102
   컴퓨터에서 소수점을 표기하는 방식에 대해 [1]
지상현 2012/01/03  7516
101
   API를 알아보자 #2 [1]
지상현 2003/04/10  7493
100
   유용한 기능을 사용자함수로 이용하기 종합.. [9]
최재일 2004/06/18  7443
99
   맞짱! 포인터(Pointer) - 2부 [C언어 포인터 존재를 확인하자!]
박종훈 2009/02/26  7287
98
   창조로 빠져보는 API #3 [13]
지상현 2005/09/04  7267
97
   윈도우즈의 시스템폴더 경로 추출법 [3]
Pueding 2002/09/08  7248
96
   [쉬운강좌]#4.창조에서 압축프로그램만들자.(1) [8]
창조신화 2002/09/16  7136
95
   골칫거리 ㅎ사용자함수 DLL하나로 해결하기! [7]
박종훈 2007/06/23  7107
LIST ALL   1 [2][3][4][5] Next
Copyright 1999-2024 Zeroboard / skin by reedyfox in miniwini style
로그인
지우개 Expert 3.0
제작자 : 천호성 님 [LINK]
로그인
대박로또2005
제작자 : 최재일 님 [LINK]
로그인
1박종훈15292 점
2지상현8809 점
3손상진7388 점
4권선중6060 점
5이진백5174 점
로그인
가입일닉네임
05/31김동률
03/31홍형기
09/01o00pp99oo
12/27이재민
11/20이희철
로그인