인스톨러는 정확히 무엇을하고 왜 필요합니까?


34

이것은 아마도 오늘의 멍청한 질문 일 것입니다.

그래서 저는이 게임을 썼습니다.

이제 작업을 수행하는 .exe 파일, 아름답고 아름다운 자산이 들어있는 폴더 및 .dll 파일이 많이 있고 내가 만져서는 안될 다른 것들이 있습니다. 게임을 실행하려면 전체 로트를 원하는 컴퓨터에 복사하고 .exe 파일을 두 번 클릭 한 다음 친구를 촬영하십시오. 예이!

그러나 설치 관리자를 사용하는 것과 설치 관리자를 사용하는 것의 차이점은 정확히 무엇입니까? 설치 프로그램은 파일을 복사하고 .zip 파일보다 전문적인 것 외에 다른 기능을 수행합니까? 다른 컴퓨터에서 게임을 실행하려고 할 때 일반적으로 많은 패치 / 구성이 있습니까? 나는 탐욕스러운 손가락을 사용할 수있는 모든 Windows 컴퓨터에서 게임을 테스트했으며 훌륭하게 작동했습니다.


1
예를 들어 XNA에서는 XNA 런타임이 필요합니다. 또는 SlimDX를 사용하려면 게임 디렉토리 또는 GAC에 SlimDX.dll이 필요합니다.
Kikaimaru

흠, 이해합니다. 그러나 필요한 .dll 파일 (내 경우에는 sdl.dll 및 해당 미니언)은 이미 .exe 파일과 동일한 디렉토리에 있으며 나머지는 복사 할 때 복사됩니다. 설치 프로그램이 다르게 수행하는 작업은 무엇입니까?
HumanCatfood

2
@Jan 최종 사용자는 파일 배치에 대해 걱정할 필요가 없습니다. 그들에게 필요한 일입니다.
Sidar

1
생각해 볼 점-게임이 얼마나 큰가요? 즉, 작은 인디 스타일 exe 파일, 하나 또는 두 개의 DLL 및 몇 개의 이미지이거나 모든 종류의 런타임 설치가 필요한 거대한 것입니다. 비교적 작은 파일 인 경우 zip 파일의 exe 파일이 충분할 수 있으며 사용자가 5 분 동안 재생 한 후 삭제하려는 임의의 게임을 설치하는 것을 꺼려 할 수 있습니다.
Piku

1
설치 프로그램에 대해 말하면 ... 종종 간과되는 것이 좋은 설치 제거 프로그램입니다. 남은 파일 및 / 또는 레지스트리 키를 얼마나 자주 제거해야했는지 잊어 버렸습니다. 게임을 다시 설치할 때 문제가 발생했을 때 특히 분노합니다.
Exilyth

답변:


34

설치 프로그램은 일반적으로 최종 사용자가 작업을보다 쉽게 ​​수행 할 수 있도록합니다. 다음과 같은 조합을 수행합니다.

  • 압축 해제
  • 디렉토리 생성
  • 필요한 런타임 설치 (.Net, Visual C ++, Direct x와 같은 재배포 가능)
  • OS에 등록 (나중에 새로 설치 제거)
  • 아름답고 아름다운 스크린 샷을 표시하여 플레이어가 작동하는 동안 플레이어를 준비시킵니다.
  • 사용자에게 게임을 등록 할 수있는 기회 제공
  • 게임 자산 또는 패치 업데이트 다운로드
  • 시작 메뉴 또는 바탕 화면에 아이콘 추가
  • 다양한 게임 디렉토리 (임시 폴더, 저장 디렉토리 등)에 대한 올바른 권한 설정
  • 이미 설치 만하면 사용자가 다음을 클릭하여 게임을 즐길 수 있습니다!

그렇습니다. 런타임을 설치해야 할지도 몰랐습니다. 고맙습니다!
HumanCatfood

2
또한 파일 액세스 권한을 설정하는 것을 잊지 마십시오! 설치 관리자가 설정하지 않는 한 게임은 해당 폴더 (저장 게임 등)에 대한 쓰기 액세스 권한을 가지고 있지 않습니다.
Nevermind

10
+1 대부분의 최종 사용자는 파일을 압축 해제하는 데 익숙하지 않기 때문에 설치 프로그램은 정상적인 기본 설치 경로를 제안하고 "그냥 해"해야합니다. 많은 최종 사용자는 파일 시스템이 무엇인지 또는 기본 문서 경로 외부에서 파일을 찾는 방법을 모릅니다. 그리고 솔직히, 왜 그들이 도대체 알아야합니까? 설치 프로그램을 가난한 사람의 앱 스토어라고 생각하면 더 이상 재생하려면 클릭 한 번이면됩니다.
Oskar Duveborn

글쎄, 그것은 실제로 타겟 고객에 달려 있습니다.
API-Beast

3
또한 이유 목록에 일관성을 추가합니다. 설치 프로그램을 제공하면 사용자가 다른 사용자와 일치하는 설정을 얻을 수 있습니다. 그렇지 않으면 누군가 게임을 데스크탑으로 압축 해제하고 거기서 실행하는 것과 같은 미친 일이 발생합니다 (예, 이런 일이 발생했습니다). 일관되고 알려진 좋은 설정을 사용하면 제거 많은 것들을 할 수 잘못을하고, 일을 할 때 문제 해결의 작업을 용이하게 이동 잘못.
Maximus Minimus

3

인스톨러는 소프트웨어 인프라의 복잡한 조각을 배포하는 과정 추상화 일반적으로, 편리한, 자급 자족 사용자 인터페이스를 통해 아카이브에 포함을 .

이 UI는 그래픽이거나 유닉스 셸 (예 : bash)과 같은 명령 줄에 출력되는 텍스트를 기반으로 할 수 있습니다. 그래픽 설치 프로그램의 경우, 대부분 소위 설치 부트 스트 래퍼가 사용됩니다. 후자의 경우 bash 스크립트, Microsoft 배치 스크립트 또는 명령 줄에서 실행되는 기타 스크립팅 언어 일 수있는 설치 스크립트입니다.

에서 간단한 경우 응용 프로그램은 단순히 실행 파일 을 실행하기 위해 파일로 무엇을 알고있는 운영 체제와 함께. 응용 프로그램 파일은 하위 폴더와 다른 보조 파일이있는 폴더 에 하나의 아카이브로 압축되어있을 수 있습니다 . 이 경우 설치 프로그램이 필요하지 않을 수 있습니다.

복잡한 소프트웨어의 경우 , 소프트웨어 제품의 저작권을 강화하기 위해 전체 소프트웨어 플랫폼과 기본 운영 체제 인프라와의 긴밀한 통합 이 바람직 할 수 있습니다.

Windows의 많은 설치 프로그램은 /e또는 /extract플래그를 제공합니다 . 예 setup.exe /e를 들어 설치 스크립트가 설치 스크립트를 실행하지 않고 아카이브 내용을 추출 할 수 있습니다. 나는 최근에 일을해야 했다 .

휴대 성을 향하여

설치자는 기본 소프트웨어 자산이 아무리 단순하더라도 전문 소프트웨어를 제공하기위한 표준이되었습니다. 컴퓨터에 정통한 사용자의 수가 증가하고 하나의 데스크톱에서 다음 데스크톱으로 애플리케이션을 마이그레이션하려는 욕구에 따라 종종 간단한 아카이브로 제공되는 휴대용 소프트웨어 가 점점 더 대중화되고 있습니다.

( 설치 프로그램에 소요 된 총 시간이 얼마인지는 모르지만 확실히 며칠 정도입니다. )

설치 관리자가 처리 할 수있는 작업은 다음과 같습니다.

  • 포장 풀기 (종종 이국적인 압축 압축기 사용)
  • 시스템 하드웨어 요구 사항 보장
  • 충분한 하드 디스크 공간 확보
  • 소프트웨어 플랫폼 런타임 요구 사항 보장 (예 : '재배포 가능 패키지')
  • 최신 소프트웨어 업데이트 확인
  • 원격 저장소에서 소프트웨어 다운로드
  • 프로그램 파일 및 폴더 생성 및 / 또는 업데이트
  • 구성 파일, 레지스트리 항목 또는 환경 변수 작성
  • 소프트웨어 드라이버 설치, 장치 마운트 또는 마운트 해제
  • 설치 단계 설명, 링크 생성, 바로 가기를 통해 일상적인 사용자의 접근성을 향상
  • 북마크 등을 통해 자체 소프트웨어 홍보
  • 설치하는 동안 소프트웨어의 핵심 사항을 제시하여 사용자가 실제로 소프트웨어를 시작할 수있는 인센티브를 제공합니다.
  • 소프트웨어 번들링을 통해 추가 수익 창출
  • 커널 모듈 및 자동 실행 구성 요소 (예 : 데몬, Windows 서비스) 구성
  • 소프트웨어 자동 패치
  • 폴더, 파일 및 사용자 권한 설정
  • 소프트웨어를 특정 설치 인스턴스에 연결하고 이식성을 방지하는 GUID 작성

... 다른 요점을 생각할 수 있으면 알려주십시오.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.