프로그램 버전 : |
---|
다운로드 URL의 경우 ftp://***.***.***.***/update.zip 으로 하면 update.zip 파일을 제대로 다운받고 설치를 하더라구요...
그렇게 생각해서 버전도 ftp://***.***.***.***/version.txt라고 했는데 그냥 다운로드 파일처럼 다운받은뒤에 이 파일을 지우기 전까지 다은 업데이트가 되지 않네요... 그렇다고 이 버전 파일을 지우면 버전 업데이트가 되지도 않았는데 계속 받을것같아서 문제가 살짝 있을것 같구요..
그렇다고해서 ftp://***.***.***.***/ 라고 하고 버전 텍스트명에 version.txt라고 했더니 클라이언트쪽 version.txt파일에 URL 경로가 다 나와서 문제가 생길 것 같네요...
바쁘시더라도 확인좀 부탁 드릴게요 ^^
댓글 '8'
ftp로 적은 것은 실험을 해본 적이 없습니다. http로 실험했기 때문에 http를 사용하시는 것이 나을 것 같네요.
최신버전 정보가 적힌 URL은 http://~~~~/version.txt 로 해두고 이곳에 최신 버전 정보를 입력합니다. (예 : 1.0.0.1)
현재버전 정보가 적힌 텍스트 파일명은 version.txt로 해놓고 현재 버전 정보를 입력합니다 (예 : 1.0.0.0)
파워업데이터 실행파일이 있는 경로에 version.txt를 읽고, URL의 version.txt를 읽어서 비교합니다.
최신 버전을 발견했을 경우 업데이트를 시작합니다.
질문의 첫번째 문단을 A, 두번째 문단을, B, 세번째 문단을 C라고 두고 설명하겠습니다.
일단 C로 하시면 안됩니다.
A는 ftp로 실험은 안했지만 잘 된다니 다행입니다.
B는 정확히 이해를 못했습니다. 다음에 다시 업데이트를 하려면 URL에 있는 version.txt 파일의 버전값만 올리시면 됩니다. 예를 들어, 1.0.0.1 버전으로 업데이트를 성공했을 경우 자동으로 업데이트 파일이 있는 경로의 version.txt의 버전값이 1.0.0.1로 변합니다. 그러므로, URL의 version.txt를 1.0.0.2로 바꿀 경우 다시 업데이트를 할수 있습니다.
http://가 안되서 ftp로 했더니 이런...
http가 제대로 동작이 안되서 그러는데 혹시 아래글을 ftp에서 http로 변경 하셔서 테스트가 가능하시나요?
ftp://~~~/version.txt 로 적었을시 클라이언트의 version.txt 파일을 지우기 전까지 서버가 아무리 버전이 높아져도 업데이트가 불가능합니다.
ftp://~~~/ 로 적었을시에는 무한업데이트가 진행됩니다.
내용도 다릅니다.
ftp://~~~/version.txt 로 다운시에는 정확이 버전이 표시가 되지만 (1.0.1)업데이트는 진행되지 않습니다.
ftp://~~~/ 로 했을시에는 http 정보가 나옵니다.(아래)
---------------------------------------------------------------------------------------------------
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<HTML>
<HEAD>
<TITLE>~~~~~~의 루트</TITLE>
</HEAD>
<BODY>
<HR>
<PRE>
09/03/2010 12:51오전 412,281 <A HREF="/update.zip">update.zip</A>
09/03/2010 12:51오전 5 <A HREF="/version.txt">version.txt</A>
</PRE>
<HR>
</BODY>
</HTML>
---------------------------------------------------------------------------------------------------
저한테는 http가 문제가 없는데... 그 이유를 모르겠군요.
ftp://~~~/ 로 했을시에는 html 정보가 나옵니다.(아래)
---------------------------------------------------------------------------------------------------
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<HTML>
<HEAD>
<TITLE>~~~~~~의 루트</TITLE>
</HEAD>
<BODY>
<HR>
<PRE>
09/03/2010 12:51오전 412,281 <A HREF="/update.zip">update.zip</A>
09/03/2010 12:51오전 5 <A HREF="/version.txt">version.txt</A>
</PRE>
<HR>
</BODY>
</HTML>
---------------------------------------------------------------------------------------------------
이것은 아마 ftp://~~~/index.html 을 다운받게 되어 그럴 것입니다.
버전 체크에 오류가 나면 그냥 버전 파일을 다운받고 업데이트를 합니다.
그러므로 무한 업데이트가 진행되죠.
제 생각엔 이유가 셋 중 하나일 것이라고 봅니다.
1. ftp를 사용하기 때문일 것입니다.
ftp로 실험하니 저희집 컴퓨터로는 다운로드도 되지 않습니다.
게다가 최신 버전 txt 파일을 다운받아 읽는 것이 아니라 그냥 인터넷 상에서 읽는 것입니다.
ftp 관련되어 프로그래밍을 하지 않았으므로 안될 거라고 믿습니다.
테스트 파일은 잘 된다고 하셨죠? 아마 http가 안되지는 않을 것입니다.
다시 http로 바꾸고 해보시는 것은 어떠실까요?
2. 반드시 텍스트 파일에는 버전 정보만 적혀 있어야 합니다. 예를들면 아래에 다른 정보가 적혀있어도 오류가 날수 있습니다.
3. 또 다른 이유는 파워업데이터 1.0.0 버전을 사용 중이실 것입니다.
파워 업데이터 1.0.1 버전은 텍스트 파일로의 버전 체크 문제를 수정했습니다.
즉 1.0.0 버전에서는 텍스트 파일로 버전 체크 기능을 쓰면 안됩니다.
많은 관심 정말 감사합니다~
업데이트 버전 확인시 구버전이면 차례대로 업데이트 되는것도 좋겠네요...
예를들어
서버)
1.0.1(폴더)
1.0.2(폴더)
1.0.3(폴더)
1.0.4(폴더)
클라)
1.0.2(txt파일등..)
이렇게 되있으면 업데이트시 폴더명을 체크해서 1.0.2 다음은 1.0.3을 다운받고 1.0.4까지 받는다랄지,
버전 파일을 1.0.1$update1.0.1.zip#1.0.2$update1.0.2.zip 등으로 버전마다 다운받을 수 있는 기능이 있으면 좋겠어요 ^^
이러저러 기능들 추가되면 유료버전도 괜찮을것같네요..