.NET에서 별다른 옵션 없이 출력하면 파일이 여러 개가 생성됩니다.
참조가 많다면 더 많은 파일이 생성되죠.
단일 파일로 배포하는 방법을 알아봅시다.
.NET에 있는 '게시' 기능이 있습니다.
이 기능을 이용하여 편하게 배포할 수 있죠.
프로젝트에서 오른쪽 클릭 > 게시
파일로 출력하면 릴리즈(Release) 폴더의 내용과 거의 같습니다.
그러니 파일로 배포하려는 경우 릴리즈 폴더만 압축해서 배포해도 상관없습니다.
파일로 배포하면 압축해서 하나의 파일만 배포해도 되니 신경을 안 쓰고 있었는데....
아무래도 파일이 많다 보니 컴퓨터에 익숙하지 않은 사람들은
1) 실행파일을 찾지 못하거나
2) 같이 첨부된 파일 일부가 지워지거나
하는 일이 벌어지곤 합니다.
이럴 때 필요한 기능이 '단일 파일 생성'입니다.
게시 > 모든 설정 표시
'배포 모드'를 '자체 포함'으로 바꿉니다.
'파일 게시 옵션'에 '단일 파일 생성'을 체크해 줍니다.
게시하면 잡다한 파일이 같이 생성되지만 '. exe' 파일만 가지고도 실행됩니다.
'단일 파일 생성' 옵션을 사용하지 않으면 모든 파일이 따로 출력됩니다.
일부 API는 단일 파일에서 사용할 수 없는 경우가 있습니다.
만약 외부 참조한 소스에서 이런 기능을 사용한다면 단일 파일 배포가 불가능할 수 있습니다.
참고 : MS Learn - 단일 파일 배포 및 실행 파일
웹 쪽을 제외한 '.NET' 응용프로그램은 단일 파일 배포가 가능합니다.
예전에는 외부 툴을 이용하던 기능이지만 이제는 자체 지원합니다.