2010-08-15 10 views
4

ClickOnce는 인트라넷 환경에서 .NET 응용 프로그램을 배포하는 편리한 방법이었습니다. 인터넷을 통해 일반 사용자에게 배포되는 데스크톱 응용 프로그램의 배포 방법으로 사용하려고 생각했습니다. (대안은 일반 설치 패키지입니다.)"실제"응용 프로그램을 배포하기 위해 VS 2010에서 ClickOnce를 사용할 때주의해야 할 사항이 있습니까?

누구나이 경험이 있습니까? 잘 됐니? 개발자 나 최종 사용자에게주의해야 할 문제가 있습니까?

답변

3

다양한 경험을 통해 웹을 통해 배포하기 위해 ClickOnce를 여러 번 사용했습니다. 내가 줄 것 포인터는 다음과 같습니다

  • 응용 프로그램이 하나의 정적 산출물이 있는지 확인
  • 배포 및 응용 프로그램의 동적 건물을 피하고, 특히 기반 매니페스트를 구축 (즉 mage.exe를 사용하여 플러그 인 아키텍처와 관련하여, 서버 측 명단 ID 및/또는 사용 권한)
  • 응용 프로그램의 인증을 제어하면 ClickOnce는 보안 웹 사이트에서 응용 프로그램을 쉽게 다운로드 할 수 있다는 점에서 엄청나게 제한적입니다. 선택 사항은 here을 참조하십시오.
  • 필수 구성 요소를 배포하지 않거나 최소한으로 유지하십시오. 예를 들어 .NET Framework 만 있으면 SQL을 표현할 수 있습니다.
  • 응용 프로그램에 중요한 권한 (예 : HKLM 레지스트리 변경)이 필요하지 않아야합니다. 응용 프로그램은 궁극적으로 로그온 한 사용자의 문서 폴더에서 실행되며 다운로드 할 때 사용자가 관리자인지 여부를 알 수 없습니다.
  • 확인 된 Authenticode 인증서가있는 ClickOnce 매니페스트에 서명
  • 배달 서비스가 업데이트되는 것과 관련하여 ClickOnce는 배달 서비스가 정적이고 적절한 위치에서 업데이트되면이 작업을 매우 잘 처리합니다. 배포 옵션에는 "설치 및 실행"옵션과 "실행 전용"옵션이 있습니다. 둘 다 배포면에서 완전히 동일하며 파일을 같은 위치에 복사하기 때문에 사용 권한은 동일합니다. 유일한 차이점은 설치 버전이 시작 메뉴에 항목을 만들고 프로그램을 추가/제거한다는 점입니다. 업데이트는 이름과 버전을 기반으로합니다. 설치된 버전의 경우 업데이트가 필수는 아니지만 실행 전용 옵션은 최신 제공 물을 가져옵니다. 인도 물이 변경되지 않았고 사용자가 이미 애플리케이션을 다운로드 한 경우 다시 다운로드하지 않고 홀딩 디렉토리에서 시작합니다.

기술은 매우 멋지지만 몇 가지주의해야 할 점이 있습니다.

+0

유용한 정보 감사! 내 응용 프로그램에는 많은 권한이 필요합니다 (예 : 로컬로 파일을 읽고 쓰고 심지어 USB 장치에 연결해야 함). 그게 나에게 큰 문제가 될까? 설치시 권한 상승을 요청할 수 있음을 이해합니다. –

+0

설치 프로그램 자체가 없기 때문에 큰 문제 중 하나입니다. 모든 종속 어셈블리를 로컬에 포함해야하며, 예를 들어 어셈블리를 GAC에 설치할 수 없습니다. 실행 파일 옆에있는 표고를 요구하는 매니페스트를 포함시킬 수 있다고 생각합니다. 그러나 사용자가 관리자 인 경우 아무런 문제가 없습니다. – fletcher

+0

내 유일한 사전 요구 사항은 .NET 4이므로 확인을해야합니다. 사용자가 관리자라고 가정해야 할 것입니다. 응용 프로그램에 필요한 유형의 정보가 필요할 것입니다. 감사! –

관련 문제