문제

일반적으로 VB.NET 프로그램을 빌드할 때 ClickOnce를 사용하지만 몇 가지 단점이 있습니다.나는 실제로 다른 것을 사용한 적이 없으므로 내 옵션이 무엇인지 잘 모르겠습니다.

ClickOnce의 단점:

  • 여러 파일로 구성 - 여러 파일을 관리하고 해당 파일을 다운로드하는 다운로더를 관리하는 것보다 하나의 파일을 배포하는 것이 더 쉬워 보입니다.
  • CD 설치를 위해 다시 빌드해야 합니다(최종 사용자가 인터넷을 사용할 수 없는 경우).
  • 프로그램이 프로그램 파일에 저장되지 않습니다. 일부 응용 프로그램 캐치 폴더에 숨겨지기 때문에 바로가기가 훨씬 더 어려워집니다.

ClickOnce의 장점:

  • 효과가있다.마술처럼.그리고 그것은 VisualStudio 2008 Express에 내장되어 있습니다.
  • 응용 프로그램을 쉽게 업그레이드 할 수 있습니다.

Windows Installer도 이러한 작업을 수행합니까?ClickOnce 단점이 없다는 것을 알고 있지만 ClickOnce 장점도 있다는 것을 아는 것이 좋을 것입니다.

업데이트:나는 결국 Wix 2를 사용하게 되었습니다(Wix 3가 사용 가능했지만 프로젝트를 수행할 당시에는 유능한 튜토리얼이 아무도 없었습니다).그것은 나에게 (결국) 필요한 세 가지를 지원해 주었기 때문에 좋았습니다.선택적 Windows 시작 바로가기, 설치 프로그램이 완료되면 시작 옵션, 그리고 상사가 잘못된 옵션을 클릭하지 않도록 사용할 것이라고 생각하는 세 단락의 텍스트.

도움이 되었습니까?

해결책

아직 WiX를 보셨나요?

http://wix.sourceforge.net/

XML 파일을 사용하여 Windows 설치 프로그램을 구축하고 설치 프로그램 등을 멋지게 만들고 싶은 경우 사용할 수 있는 추가 라이브러리가 있습니다.작업을 시작하는 데 학습 곡선이 중간 정도였다는 점을 인정하지만 이후에는 아무런 어려움 없이 두 번째 설치 프로그램을 구축할 수 있었습니다.

원하는 경우 업데이트 및 기타 항목을 처리하고 설치 프로그램에 폴더 권한 등을 적용할 수 있습니다.또한 파일을 설치할 위치를 정확하게 제어할 수 있고 모든 표준화된 Windows 폴더 규칙과 호환되므로 "PROGRAM_DATA" 또는 그와 관련된 내용을 지정할 수 있으며 설치 프로그램은 이를 C:\Documents 및 XP 또는 Vista를 실행하는지 여부에 따라 Settings\All Users\Application Data 또는 C:\ProgramData.

Office 2007과 Visual Studio 2008이 WiX를 사용하여 설치 프로그램을 만들었다는 소문이 있지만 어디서도 이를 확인할 수 없었습니다.나는 이것이 내부의 일부 Microsoft 사람들에 의해 개발되었다고 믿습니다.

다른 팁

나는 Joseph의 의견에 동의합니다. ClickOnce에 대한 나의 경험은 특히 구축, 게시 및 배포를 쉽게 만드는 기업 환경의 대다수 프로젝트에 적합합니다.ClickOnce에서는 실행 시 사용자가 최신 버전을 사용할 수 있도록 "강제 업그레이드"를 구현하는 것이 훨씬 쉬웠으며 이를 사용하는 주된 이유도 있습니다.

ClickOnce 관련 문제:기업 환경에서는 프록시 서버에 문제가 있으며 해결 방법은 이상적이지 않습니다.이러한 경우 UNC 경로에서 몇 가지 앱을 배포해야 했지만...항상 그렇게 할 수는 없습니다.실행 파일을 찾거나 바탕 화면 바로 가기를 만들기 전까지는 "샌드박스"가 훌륭합니다.

2008년 이후에는 아직 배포하지 않았으므로 이러한 문제가 여전히 존재하는지 확실하지 않습니다.

EXE에 대한 종속성(필요한 사항에 따라 다름)을 사용하여 설치 프로그램 프로젝트를 만드는 것은 매우 간단한 프로세스이지만 이를 위해서는 최소한 VS Standard Edition이 필요합니다.

설치 프로그램 프로젝트 내에서 코딩한 모든 작업을 수행할 수 있는 사용자 지정 작업과 대화 상자 단계를 만들 수 있습니다.

누락된 것은 ClickOnce를 통해 얻을 수 있는 자동 업그레이드 및 버전 확인 기능입니다.여전히 구축할 수 있지만 자동은 아닙니다.

Windows Installer 프로젝트에서 ClickOnce의 용이성과 업그레이드 가능성을 갖도록 만드는 쉬운 방법은 없다고 생각합니다.저는 제가 개발하는 모든 내부 .NET 앱에 ClickOnce를 사용합니다(콘솔 앱 제외).엔터프라이즈 환경에서는 배포의 용이성이 유연성의 부족보다 중요하다는 것을 알았습니다.

ClickOnce는 제품과 함께 설치해야 하는 타사 구성 요소가 있는 경우 문제가 될 수 있습니다.구성 요소에 대한 설치 프로그램을 만들어 이를 어느 정도 피할 수 있지만 ClickOnce 배포를 사용하면 해당 구성 요소 설치 프로그램을 업데이트하는 논리를 만들어야 합니다.

저는 이전에 Wise For Windows Installer를 사용하여 설치 패키지를 만든 적이 있습니다.업그레이드 생성은 ClickOnce처럼 자동이 아니었지만 등록/추가해야 하는 다른 구성 요소에 관해서는 더 정확하고 골치 아픈 일이 적었습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top