2012-09-28 5 views
1

나는 고객이 인터넷을 통해 소프트웨어의 버전을 업데이 트하는 자동 소프트웨어 업데이트 서비스를 개발하고 있어요, 우리가 원격 서버에서 다운로드를 고려하고 파일을 전송하기 .제한 성능 요소는 HTTP를 통해

업데이트 서버 요청을 인증 소프트웨어의 라이센스를 확인하고 (업데이트가 필요한 소프트웨어의 여러 버전이있을 수있는 것처럼) 올바른 업데이트 파일을 클라이언트를 제공 할 수 있어야

ASP.net 웹 응용 프로그램은 작업을 수행 할 수 있지만 IIS에 설치해야하므로 웹 응용 프로그램을 피하려고합니다. 나는 Streamed transferMode으로 windows 서비스에 호스팅 된 basicHttp WCF 라이브러리를 고려하고 있습니다. 그러나 "WCF로 파일을 전송하는 것은 좋은 습관이 아닙니다!"라는 WCF 기술은 왜 파일 전송 기술이 아닌지 궁금합니다. 제한 및 대안?

는이 작업에 대한 WCF의 Windows 서비스를 제안합니까?

+1

저는 응용 프로그램을 배포하고 라이센스를 별도로 인증하기 위해 clickonce (또는 기타)와 같은 솔루션을 사용하는 것이 좋습니다. 어쨌든 사람들이 해당 응용 프로그램을 xcopy 찾을 수 있습니다, 기업 환경은 항상 자신의 패키징 솔루션을 가지고 있습니다. – AlSki

+0

[자동 업데이트 기능을 어떻게 구현해야합니까?] (http://stackoverflow.com/questions/232347/how-should-i-implement-an-auto-updater), [업데이트 작성에 대한 지침 및 의견 시스템] (http://stackoverflow.com/q/2917203/62576), [소프트웨어 자동 업데이트] (http://stackoverflow.com/q/5130765/62576) 및 기타 많은 질문이 있습니다. –

+0

WCF가 좋은지 아닌지는 주된 질문입니다. 제목을 변경하겠습니다. –

답변

1

이 정확히 WCF에 관한 및 파일 전송 귀하의 질문에 대답하지 않는, 그러나 나는 너무 오래 전에 자동 업데이터 응용 프로그램을 구축하는 작은 클라이언트 프론트 엔드가 WinForms 앱에 있었는데 로컬 파일 목록을 얻고 각 파일의 MD5 해시를 생성하여 웹 서버에있는 로컬 파일 목록과의 비교를 위해 웹 서비스에 보냈습니다. 웹 서비스 메소드가 t을 반환했습니다. 그는 변경된 파일 목록입니다.

클라이언트 것 그 목록을 반복하고 각 파일에 대한 바이트 배열을 반환하고 로컬 하드 드라이브에 덤프 것입니다 다른 웹 서비스를 호출합니다. 이 작업이 완료되었을 때

, 그것은 업데이트 된 응용 프로그램의 EXE에 Process.Start를 할 것입니다.

그것은 문제없이 년 이상에 대한 백 몇 활성 사용자와 생산 운영하고 있습니다.

+1

WCF 서비스의 속도 제한, 시간 초과 등을 참조하는 구성 부분을 공유하고 싶을 수 있습니다. 나는 그것이 그가 문제에 부딪 힐 곳이다. –

관련 문제