Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 



노트북을 Vista 운영체제로 설치한 이후, 제 홈페이지에 꽤나 문제가 있었습니다. 예전과 다름없이 빌드하고 홈페이지를 업데이트시켰는데, 다음과 같은 오류가 발생하더군요.

[오류 보기]

이벤트 뷰어에서는 이런 오류 정보를 확인할 수 있습니다.

이벤트 형식:	경고
이벤트 원본:	ASP.NET 2.0.50727.0
이벤트 범주:	웹 이벤트 

...[중간 생략]...

이벤트 발생 횟수: 1 
이벤트 정보 코드: 0 
 
...[중간 생략]...
 
예외 정보: 
    예외 형식: HttpException 
    예외 메시지: 파일이나 어셈블리 'TestLib, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' 또는 
    여기에 종속되어 있는 파일이나 어셈블리 중 하나를 로드할 수 없습니다. 
    강력한 이름 시그니처를 확인할 수 없습니다. 어셈블리가 훼손된 경우이거나, 
    서명 연기되었지만 정확한 개인 키로 완전히 서명되지 않은 경우입니다. 
    (예외가 발생한 HRESULT: 0x80131045) 
 

해당 DLL은 비록 서명이 되어 있긴 하지만, GAC에 등록하진 않고 사용하던 어셈블리였습니다. HRESULT 오류 코드값을 확인해 보면, "FUSION_E_SIGNATURE_CHECK_FAILED"라는 것을 알 수 있는데, 일단 이런 오류 메시지가 발생하게 되면 해당 DLL을 직접 GAC 폴더에 끌어다 놓기를 해도 다음과 같은 오류 메시지만을 담은 메시지 창이 뜨면서 등록이 안 됩니다.

어셈블리 캐시 뷰어 - 설치하지 못했습니다.

어셈블리 'TestLib.dll'에 대해 강력한 이름 시그니처를 확인할 수 없습니다. 
어셈블리가 훼손된 경우이거나, 서명 연기되었지만 정확한 개인 키로 완전히 서명되지 않은 경우입니다.

위와 같은 오류가 발생한 이후부터 제가 시도해 본 방법은 Vista 운영체제가 아닌 다른 컴퓨터의 VS.NET 2005에서 동일하게 빌드를 한 다음 배포를 한 경우인데, 이런 때는 정상적으로 동작을 했으며 GAC 수동 등록도 잘 되었습니다. 또한, Vista에서의 VS.NET 2005에서도 MSI 셋업 파일로 해당 DLL을 GAC에 배포하도록 하게 된 경우에는 정상적으로 등록이 되었습니다.

아무래도, 이 문제는 Vista에 설치된 .NET 관련 서명 코드와 이전 운영체제 환경의 서명 확인 과정이 다소 틀린 것에서 발생하는 문제가 아닌가 예상만 해볼 뿐입니다. 참고로, 제가 웹 사이트를 "Longhorn" 서버에 옮긴 이후로는 이러한 서명 확인 오류가 발생하지 않았습니다.

일단, 현재는 이 정도만 트레이스를 해보았지만... 혹시 Vista에서의 개발 환경을 구성하셔서 프로젝트 중인 분들이 이런 오류를 만났는지 궁금하군요. ^^




오류 발생 환경을 정리해 보면 다음과 같습니다.

[오류가 발생한 환경
빌드 환경:
 - Visual Studio.NET 2005 영문 버전
 - Windows Vista 영문 버전
 
ASP.NET 구동 환경:
 - Windows 2003 (.NET 2.0 / .NET 3.0 설치)
 

반면에 다음과 같은 환경에서는 오류가 발생하지 않았습니다.

[정상적인 환경 1]
빌드 환경:
 - Visual Studio.NET 2005 영문 버전에서 빌드 후 MSI 설치 파일로 배포
 - Windows Vista 영문 버전
 
ASP.NET 구동 환경:
 - Windows 2003 (.NET 2.0 / .NET 3.0 설치)
 
[정상적인 환경 2]
빌드 환경:
 - Visual Studio.NET 2005 영문 버전
 - Windows 2003 영문 버전
 
ASP.NET 구동 환경:
 - Windows 2003 (.NET 2.0 / .NET 3.0 설치) 
 
[정상적인 환경 3]
빌드 환경:
 - Visual Studio.NET 2005 영문 버전
 - Windows Vista 영문 버전
 
ASP.NET 구동 환경:
 - Longhorn 빌드 5600
 



[이 토픽에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 6/20/2023]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 46  47  48  49  50  51  52  53  54  55  56  [57]  58  59  60  ...
NoWriterDateCnt.TitleFile(s)
12515정성태1/28/202118793웹: 41. Microsoft Edge - localhost에 대해 http 접근 시 무조건 https로 바뀌는 문제 [3]
12514정성태1/28/202118982.NET Framework: 1021. C# - 일렉트론 닷넷(Electron.NET) 소개 [1]파일 다운로드1
12513정성태1/28/202116093오류 유형: 698. electronize - User Profile 디렉터리에 공백 문자가 있는 경우 빌드가 실패하는 문제 [1]
12512정성태1/28/202116516오류 유형: 697. The program can't start because VCRUNTIME140.dll is missing from your computer. Try reinstalling the program to fix this problem.
12511정성태1/27/202116241Windows: 187. Windows - 도스 시절의 8.3 경로를 알아내는 방법
12510정성태1/27/202117092.NET Framework: 1020. .NET Core Kestrel 호스팅 - Razor 지원 추가 [1]파일 다운로드1
12509정성태1/27/202116938개발 환경 구성: 524. Jupyter Notebook에서 C#(F#, PowerShell) 언어 사용을 위한 환경 구성 [3]
12508정성태1/27/202116216개발 환경 구성: 523. Jupyter Notebook - Slide 플레이 버튼이 없는 경우
12507정성태1/26/202116757VS.NET IDE: 157. Visual Studio - Syntax Visualizer 메뉴가 없는 경우
12506정성태1/25/202119879.NET Framework: 1019. Microsoft.Tye 기본 사용법 소개 [1]
12505정성태1/23/202116553.NET Framework: 1018. .NET Core Kestrel 호스팅 - Web API 추가 [1]파일 다운로드1
12504정성태1/23/202118554.NET Framework: 1017. .NET 5에서의 네트워크 라이브러리 개선 (2) - HTTP/2, HTTP/3 관련 [1]
12503정성태1/21/202116943오류 유형: 696. C# - HttpClient: Requesting HTTP version 2.0 with version policy RequestVersionExact while HTTP/2 is not enabled.
12502정성태1/21/202117509.NET Framework: 1016. .NET Core HttpClient의 HTTP/2 지원파일 다운로드1
12501정성태1/21/202116453.NET Framework: 1015. .NET 5부터 HTTP/1.1, 2.0 선택을 위한 HttpVersionPolicy 동작 방식파일 다운로드1
12500정성태1/21/202117300.NET Framework: 1014. ASP.NET Core(Kestrel)의 HTTP/2 지원 여부파일 다운로드1
12499정성태1/20/202118668.NET Framework: 1013. .NET Core Kestrel 호스팅 - 포트 변경, non-localhost 접속 지원 및 https 등의 설정 변경 [1]파일 다운로드1
12498정성태1/20/202117068.NET Framework: 1012. .NET Core Kestrel 호스팅 - 비주얼 스튜디오의 Kestrel/IIS Express 프로파일 설정
12497정성태1/20/202119669.NET Framework: 1011. C# - OWIN Web API 예제 프로젝트 [1]파일 다운로드2
12496정성태1/19/202117003.NET Framework: 1010. .NET Core 콘솔 프로젝트에서 Kestrel 호스팅 방법 [1]
12495정성태1/19/202119349웹: 40. IIS의 HTTP/2 지원 여부 - h2, h2c [1]
12494정성태1/19/202118605개발 환경 구성: 522. WSL 2 인스턴스와 호스트 측의 Hyper-V에 운영 중인 VM과 네트워크 연결을 하는 방법 [2]
12493정성태1/18/202116688.NET Framework: 1009. .NET 5에서의 네트워크 라이브러리 개선 (1) - HTTP 관련 [1]파일 다운로드1
12492정성태1/17/202115642오류 유형: 695. ASP.NET 0x80131620 Failed to bind to address
12491정성태1/16/202117651.NET Framework: 1008. 배열을 반환하는 C# COM 개체의 메서드를 C++에서 사용 시 메모리 누수 현상 [1]파일 다운로드1
12490정성태1/15/202116782.NET Framework: 1007. C# - foreach에서 열거 변수의 타입을 var로 쓰면 object로 추론하는 문제 [1]파일 다운로드1
... 46  47  48  49  50  51  52  53  54  55  56  [57]  58  59  60  ...