Q&A

  • 자동 패치를 구현할려고 하니까...
안녕하세요...항상 질문만 하는 사람입니다....-_-;;

혼자 가슴만 태우다가...이렇게 글을 남깁니다...부디...답변을.....



Function Tfrmdownload.GetHTTP(URL:string): string;

Begin

with TNMHTTP.Create(Nil) do

Try

InputFileMode := False;

OutputFileMode := False;

ReportLevel := Status_Basic;

TimeOut := 10000;

Get(URL);

Result := Body;

Free;

Except

Free;

Result := '';

end;

end;



요 함수가 있구요...버튼을 눌렀을때...

GetHTTP('http://서버/파일이름.exe') 요렇게 URL을 넘겨주구요...



여기서 질문인데요..이렇게 한다면...파일을...하나의 변수에...넘겨받을 수



있는 방법이 있을까요?..[변수 : file;] 이렇게 선언하구요...



저렇게만 하는게 아니라...또 어떤 방법이 있나요?..꼭 http 프로토콜을 이용해야..



하거든요...하도 몰라서..질문도 어떡해야 할지 모르겠네요..



그냥 바로 특정 디렉토리에 다운로드하는 방법은 있는데...디렉토리에 다운로드



하기 전에 버전 체크를 할려고 하거든요..그러니까..복사전에 체크하고...복사하고



싶어서요...버전 체크는 RX 라이브러리를 이용하려 하구요...



어떻게 해야하는건지...고수님들의 답변 부탁 드립니다...



그럼 하시는 일들...항상..잘 이뤄지시길....

1  COMMENTS
  • Profile
    hbesthee 2001.02.06 23:34
    저도 이곳에서 자동 패치에 대한 자료를 찾다가 몇몇 분의 도움되는 글을 보았습니다.

    요는 패치 파일을 받기 전에 업데이트가 되었는지 검사를 해야 하잖아요?



    그럼, 아래의 함수를 실행하기 전에, 먼저 프로그램이 업데이트가 되었는지 검사하는

    함수를 하나 작성하면 되겠지요?

    그 함수에서 하는 작업은 서버에서 http든 ftp든 간에 업데이트 정보가 담겨있는

    파일-예를 들어 update.ini-을 받아서 그 파일에서부터 업데이트에 관련된 정보를

    읽어 들여 현재 버젼에서 새로 패치된 것이 있는지 검사를 합니다.

    업데이트 정보 파일도 어떤 특정 디렉토리에 넣고, 프로그램에서는 항상 그 파일로

    업데이트를 검사하고, 업데이트가 되었을 경우 서버의 업데이트 정보 파일을 수정하고

    업데이트된 패치 파일만 새로 올리면 됩니다.



    그런 후에, 새로 패치되었을 때만, 아래의 함수를 실행하면 되겠지요...





    그리고, 다운 받은 파일을 file 변수에 넣으시려면, 아래 함수에서라면,

    body에 있는 것은 새로 생성한 file 로 저장하면 되겠고,

    아니면, 간단하게 get을 수행하기 전에 body에 파일명을 넣어주고,

    InputFileMode:=true; 로 설정하면 body에 지정된 파일명으로 바로 저장이 됩니다.



    get을 수행한 후에 body에 지정된 파일명으로 file 변수로 읽어 들이면 될것 같군요...



    그럼, 도움이 되었길.~





    고한무 wrote:

    > 안녕하세요...항상 질문만 하는 사람입니다....-_-;;

    > 혼자 가슴만 태우다가...이렇게 글을 남깁니다...부디...답변을.....

    >

    > Function Tfrmdownload.GetHTTP(URL:string): string;

    > Begin

    > with TNMHTTP.Create(Nil) do

    > Try

    > InputFileMode := False;

    > OutputFileMode := False;

    > ReportLevel := Status_Basic;

    > TimeOut := 10000;

    > Get(URL);

    > Result := Body;

    > Free;

    > Except

    > Free;

    > Result := '';

    > end;

    > end;

    >

    > 요 함수가 있구요...버튼을 눌렀을때...

    > GetHTTP('http://서버/파일이름.exe') 요렇게 URL을 넘겨주구요...

    >

    > 여기서 질문인데요..이렇게 한다면...파일을...하나의 변수에...넘겨받을 수

    >

    > 있는 방법이 있을까요?..[변수 : file;] 이렇게 선언하구요...

    >

    > 저렇게만 하는게 아니라...또 어떤 방법이 있나요?..꼭 http 프로토콜을 이용해야..

    >

    > 하거든요...하도 몰라서..질문도 어떡해야 할지 모르겠네요..

    >

    > 그냥 바로 특정 디렉토리에 다운로드하는 방법은 있는데...디렉토리에 다운로드

    >

    > 하기 전에 버전 체크를 할려고 하거든요..그러니까..복사전에 체크하고...복사하고

    >

    > 싶어서요...버전 체크는 RX 라이브러리를 이용하려 하구요...

    >

    > 어떻게 해야하는건지...고수님들의 답변 부탁 드립니다...

    >

    > 그럼 하시는 일들...항상..잘 이뤄지시길....