2011-03-14 2 views
1

는 설치,하면 Installshield 또는 Visual Studio 설치 프로젝트 또는 다른 것?가 설치

+3

더 큰 질문은 * 왜 * 당신 자신의 설치 프로그램을 만드시겠습니까? 기존 설치 프로그램으로 해결할 수없는 문제는 무엇입니까? –

답변

3

예, 그것은 그렇게하는 "괜찮아"의 솔루션을 훨씬 쉽게/당신을 코딩보다 빠른 소유,하지만 난 욕망 질문 -

하고의 문제를 이 두 배입니다 :

  1. 당신은 설치 프로그램이 당신을 위해 할 수있는 일을 많이하고 있으며, 테스트가 많이 이루어 졌을 것입니다. 자신의 (가난한) 대안을 개발하기 위해 합리적인 직업을 수행하는 완벽하게 훌륭한 도구를 피하는 이유는 무엇입니까?

  2. C#에서 코드를 작성하면 설치 프로그램을 실행하기 전에 .NET Framework가 설치되어 있어야합니다. 일반적으로 기본 부트 스트 래퍼는 설치 프로그램을 호출하기 전에 프레임 워크가 설치되어 있는지 확인합니다.

1

를 사용하지 내가 코드를 의미합니다 (설치 프로그램을 작성하기 위해 자신의 C# 응용 프로그램을 코딩하는 것이 확인되어 코딩 . 다음 아니, 대신 ClickOnce를 사용해야합니다, 그것은

1

어떤 의미에서 바퀴를 다시 발명 할 것이고 설치의 복잡성에 따라 휠체어를 잘못 이해할 가능성이 있습니다. 설치 프로그램은 설치 제거 응용 프로그램을 올바르게 등록하기 위해 설치 API를 올바르게 호출하는 방법을 알고 있습니다. Windows 서비스를 올바르게 설치하고, 시작 메뉴 항목을 만들고, 바로 가기를 설정하는 방법을 알고 있습니다. ...

WiX를 개인적으로 권장합니다. MSI 기반 설치의 유연성과 XML 기반 스크립트의 유연성을 모두 제공합니다.

배치 스크립트를 작성하여 응용 프로그램을 xcopy하고 레지스트리 항목을 만드는 것은 매우 쉽습니다. 설치 중 일부가 실패 할 경우 설치 프로그램이 트랜잭션을 롤백하는 지 확인하는 것은 쉬운 일이 아닙니다. 이것은 MSI 설치에 내재 된 것이며 응용 프로그램을 제공하기 위해 선호되는 방법입니다.

WiX를 배우고 싶지 않고 MSI (데이터베이스 기반, 트랜잭션) 설치 사용에 신경 쓰지 않는다면 최소한 NSIS를 살펴보십시오. 몇 줄의 스크립트만으로 기본적인 설치 프로그램을 만드는 것은 매우 쉽습니다. 적어도 설치 API를 올바르게 호출 할 것입니다. 또한 멋진 GUI를 얻을 수 있습니다. http://nsis.sourceforge.net