Microsoft MVP성태의 닷넷 이야기
[답변]: 스마트클라이언트 배포 시 .NET Framework 버전에 관한 문제 [링크 복사], [링크+제목 복사],
조회: 11959
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
부모글 보이기/감추기

좋은 질문입니다 ^^

아쉽게도, 그에 대한 (일반 수준의) 멋있는(!) 처리 방법은 없는 것 같습니다.
IE에 임베딩된 형태의 DLL을 처리해주는 것은 IEHost.dll의 몫입니다.
DLL 자체의 특성 때문에, 런타임 버전을 지원해 주는 기능은 처리하지 못합니다.

유일한 해결책인 것처럼 보이는 .config 파일의 requiredRuntime 요소는 아쉽게도 IE 임베딩된 형태에서는 처리되지 않습니다. 왜냐면, 하나의 EXE 프로세스에서 2개의 런타임을 지원하지 못하기 때문에 2개 이상의 IE 임베딩 컨트롤의 .config 파일에서 서로 다른 requiredRuntime을 지정하는 것은 맞지 않기 때문입니다.

그럼 어찌해야 할까요? ^^
C:\Program Files\Internet Explorer 폴더에 iexplore.exe.config 파일을 두는 것을 생각해볼 수 있습니다. 현재로서는, 이것이 최선의 방법이라고 보여집니다.

<configuration>

<startup>
    <requiredRuntime imageVersion="v1.1.4322" version="v1.1.4322" />
    <supportedRuntime version="v1.1.4322" />
</startup>

</configuration>

위와 같은 내용으로 구성해서 저장해 두시면 됩니다.

어쨌든... CLR이 1.1과 2.0 모두가 한 프로세스에 올라오도록 지원되지 않는 한, 위와 같은 식의 방법이 유일한 해결책일 것 같습니다.

아마도,,, 1.1과 2.0이 혼재하는 시기에는 1.1용 IE 구동 파일과 2.0용 IE 구동 파일을 별도로 만들어 두는 것도 개발자에게는 좋을 것 같네요. ^^

iexplore.exe 파일을 iexplore1.exe와 iexplore2.exe로 복사하고, 각각의 .config 파일을 지정한 후 실행하도록 하는 것.








[최초 등록일: ]
[최종 수정일: 6/27/2021]


비밀번호

댓글 작성자
 



2005-10-11 09시19분
[이용희] 정태님은 결과적인 어떤것 보다는 원초적인 어떤것을 항상 제시해 주시는 것 같아 너무 감사하게 생각합니다. 많은 도움이 되었습니다.
[guest]
2005-10-11 09시20분
[이용희] 오타가 났내요...죄송...성태님 성함을 잘못 적었습니다...^^
[guest]
2005-10-11 10시34분
^^
techsharer

1  2  3  4  5  [6]  7  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5841guest3/3/202311695프로그램 판매 시 - Upgrade 버전 판매 [2]
5840joe3/2/202312555C# 클래스 라이브러리 수정 -> C++에서 참조시 함수 목록 갱신되지 않음. [4]파일 다운로드1
5839guest3/2/202312587윈도우 서비스 프로그램 - FORM 애플리케이션 감시서비스 [8]
5838랄랄라3/1/202310903event 사용 시 두 표현의 차이점이 있을까요? [1]
5837감사합니...2/28/202311685오라클 DB서버 접속관련 문의 드립니다.(Load Balancing, HA Events) [2]
5836박지범2/27/202310959static instance의 initialize 순서가 보장되나요? [6]
5835주민호2/25/202318599Windows Software Development Kit - 최신버전 1개 남기고 다 삭제하면 안되는지요? [10]파일 다운로드1
5834guest2/24/202310912Python IDE - 비주얼스튜디오 [3]
5833무지남2/23/202310132Async 메서드 그리고 나서 Bool 메서드 [5]
5832김지우2/21/202310906event와 delegate의 차이 , event를 써야하는 이유 [1]
5831이우람2/20/202312224ref 전역변수가 pinned가 될수 있나요? [2]
5830냉수마찰2/19/202311380C# GridView에 Column별 데이터 추가하는 방법에 대해 [1]
5829수박942/19/202313061키움 API를 윈폼과 WPF의 네임스페이스 없이 콘솔이나 WinUI3에서 사용할 수 있는 방법이 있나요? [2]파일 다운로드1
5828김재영2/19/202311771장기적으로는 this 구문을 안쓰는게 맞을까요? [2]
5827lee2/18/202313499파이썬 설치 오류 질문입니다 [1]
5826Syong2/14/202313296Socket 관련 Leak (OverlappedAsyncResult, OverlappedData) 관련 문의 [7]파일 다운로드1
5825박성원2/14/202312390Listview 컨트롤의 화면 전환 시 갱신 속도 [1]
5823검은콩2/13/202315405catch(Exception ex)의 line번호를 쉽게 알 수 없는지요? [7]
5822김지우2/11/202314748책을 보면서 sync, async 이해가 되지 않는 부분이 있습니다. [5]파일 다운로드2
5821검은콩2/9/202311448Async 신뢰성과 소켓데이터 [4]
5820차가워2/8/202311287다른 프로세스 실행 후 포커스 가져오기 [3]
5819취준생2/7/202311920WPF 관련 실무가 궁금합니다. [3]
5818윤길2/7/202311118ObservableCollection 에서 INotifyPropertyChanged 구현해야하나요? [2]
5817흰털너부리2/7/202310650배포 시 winform 실행 콘솔로그 보는 방법 [1]
5816흰털너부리2/6/202310991.net core json array validation 질문 드립니다. [1]
5815김재영2/6/202310821종단간 암호화에 대해 시나리오인데 타당한 시나리오일까요? [2]
1  2  3  4  5  [6]  7  8  9  10  11  12  13  14  15  ...