Microsoft MVP성태의 닷넷 이야기
글쓴 사람
박원웅
홈페이지
첨부 파일
 
안녕하세요.

현재 진행중인 내용은 닷넷프레임워크로 개발된 윈폼, 웹 등 여러가지의 구성요소가 있습니다.
프레임워크의 경우 윈도우 환경에서 구동된다는 전제로 일반적으로는 산출물에 사용된 프레임워크 버전이 설치되어있다는 전제로
제품을 배포하고 배포하기전 설치되어 있지 않은 경우 프레임워크를 우선 설치하는것이 필수여야 하는것으로 알고있습니다.

궁금한사항은

"만약 저희 산출물이 구동되어야 하는 환경이 개발에 사용된 프레임워크 버전이 설치되어 있지 않은 상태에서
해당 프레임워크 버전을 설치하지 않고 동작시키는 방법이 있을까?" 라는 겁니다.

산출물에 사용된 프레임워크의 어셈블리 등을 포함하여 배포하고 구동시에도 포함된 어셈블리로 구동되게 하는 방식등이 가능할까?
입니다.

그리고 설치된 어셈블리를 참조하여 사용하는 것과 해당 프로젝트에서 nuget으로 추가하여 사용하는 것은 어떤 차이가 있는지도 궁금합니다.

조언 부탁드립니다.
감사합니다.




donaricano-btn



[최초 등록일: ]
[최종 수정일: 11/22/2021]


비밀번호

댓글 쓴 사람
 



2021-11-22 10시23분
.NET Framework는 반드시 대상 컴퓨터에 해당 버전의 프레임워크가 설치되어 있어야 합니다. 반면, .NET Core/5+로 개발한다면 가능합니다.

참고로, .NET Framework의 경우, 과거에 .NET 2.0 대상으로 빌드하고 .NET 4.0 지원을 supportedRuntime으로 구성한 적이 있습니다. ("https://www.sysnet.pe.kr/2/0/1233")

이렇게 만들면 (어떤 버전이든 상관없이) .NET Framework만 설치되어 있으면 어디에서나 별도의 .NET 버전 설치 없이 실행하게 만들 수 있습니다. 하지만 코드에서 사용할 수 있는 BCL은 모두 .NET 2.0을 기준으로 제약이 된다는 단점이 있습니다. 사실 요즘의 환경에서는 .NET 2.0은 배제하고 그냥 .NET 4.0의 supportedRuntime만 구성해도 어느 PC에서나 실행될 수 있을 것입니다.

<?xml version="1.0"?>
<configuration>
  <startup>
    <supportedRuntime version="v4.0.30319"/>
  </startup>
</configuration>
정성태
2021-11-22 05시23분
[seokwon] 닷넷 프레임워크가 아닌 닷넷5, 닷넷6에서 윈폼은 Self Contain 방법으로 단독 배포가 가능합니다.
[손님]
2021-11-24 12시20분
[박원웅] 답변 감사드립니다. 좋은 참고사항이 되었습니다.
[손님]

[1]  2  3  4  5  6  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5596kss1/26/202264듀얼 모니터 환경에서 wpf 프로그램 크기 변경 [2]
5594miraclewing1/25/202264안녕하세요 try~catch 와 SuspendLayout~ResumeLayout 간 호출 문의드립니다! [2]
5593C#스터디1/12/2022259TaskAwaiter 구현 질문 입니다. [1]
5591유지킴12/24/2021356outofmemory in 32bit [2]파일 다운로드1
5590kss12/23/2021358포인터 메모리 에러 [1]
5589초급12/22/2021353c# -> 라즈베리파이(db 접속)시 에러 발생 [7]
5588김지신12/21/2021332안녕하세요 String 변수 참조 주소 질문입니다. [2]
5587이완호12/17/2021379C# SharpDX 화면 캡쳐 관련해서 질문 드립니다. [1]
5586조미김12/16/2021439윈폼에서 메인 스레드와 UI 스레드의 차이점 질문드립니다 [4]
5585김준희12/16/2021340C# 윈폼 TCP/IP 데이터 연속으로 보낼때 [1]
5583난인간이다12/10/2021256.net 6 dynamic pgo 활성화 및 예상되는 문제 [1]
5582김준희12/9/2021322C# TCP/IP 통신시 연결 끊김 에러 [1]
5581김시준12/9/2021420닷넷에서 파일 delete 함수는 왜 비동기가 없는 것인가요? [2]
5580카짜프로그래머12/7/2021434패턴매칭 -튜퓰비교에 관한 오류사항과 궁금증 [1]파일 다운로드1
5579카짜프로그래머12/6/202144011.12 메서드 중복정의에 대한 질문 [1]
5577감사합니다.11/30/2021445visual studio 2015 update 3를 다운받을려고 하는데 x64/x86 차이점이 뭘까요? [2]
5576노홍구11/29/2021240C# 으로 USB 스캐너 프린터 리셋하기 입니다. [1]
5575베라11/23/2021339event handler 관련 문의 [2]
5574박원웅11/22/2021408닷넷 프레임워크 산출물의 배포시 해당 환경에 프레임워크 버전이 설치되어 있지 않는 경우를 고려한 배포방법은? [3]
5573mijin11/21/2021231System.NullReferenceException 에 대한 질문 [1]
5572김현진11/21/2021293C# list.Clear() 호출에 대한 문의 드립니다. [4]
5571한예지11/18/2021514무설치 프로그램 원리가 궁금합니다. [2]
5570초보11/16/2021623주식데이터 초당 수신 건수를 구하고 있는데 처리속도가 느려서요 [2]
5569카짜프로그래머11/14/2021459381페이지 UTC에대한 언급이 그리니치 천문대 시간으로 되어있는게 맞나요? [1]
5568카짜프로그래머11/14/2021494그림 5.20, 그림 5.22 언급 오류 [1]
[1]  2  3  4  5  6  7  8  9  10  11  12  13  14  15  ...