2012년 9월 12일 수요일

Error 1001. 설치를 초기화하는 동안 예외가 발생했습니다. System.BadImageFormatException

증상 :
Install Program에서 아래의 오류가 발생하고 설치가 실패


오류 내용 : 
Error 1001. 설치를 초기화하는 동안 예외가 발생했습니다.
System.BadImageFormatException : 파일이나 어셈블리 file:///C:\...\RIALab.Streaming.EncodingService.exe 또는 여기에 종속되어 있는 파일이나 어셈블리 중 하나를 로드할 수 없습니다. 현재 로드된 런타임보다 최신 런타임으로 어셈블리를 빌드했으므로 어셈블리를 로드할 수 없습니다.


원인 :
원래 설치하고자 하는 시스템은 .Net Framework 3.5를 기준으로 만들어졌고 Setup Project 또한 .Net Framework 3.5로 만들어졌었다.
이 프로젝트를 .Net Framework 4.0으로 Migration을 하고 설치 파일을 만들었으나 위의 오류가 발생하였다.

오류가 발생했던 원인은 단순했다.

Setup Project를 마우스 우클릭하여 View > Launch Conditions을 클릭하면 해당 화면이 표시되는데 "Launch conditions"라는 폴더 하부에 ".Net Framework"라는 항목이 있는 것을 볼 수 있다.
해당 항목을 클릭해서 속성을 보면 "Version" 값이 "3.5.30729"로 잡혀 있는 것을 확인할 수 있다.

즉, .Net 4.0으로 Migration을 하더라도 기존의 .Net 3.5 버젼 값은 변경되지 않아서 발생했던 문제다.


처리 방법 :
Version 값을 ".Net Framework 4.0"으로 변경/선택한다.

댓글 없음:

댓글 쓰기