본문 바로가기
C#

Stopped working CLR20r3 error

by 캡틴노랑이 2015. 12. 22.
반응형

개발pc에서는 정상으로 작동이 되나 사용자에게 배포 후에 실행을 하였더니 다음과 같은 오류가 발생하였다. 

구글링에 별의별 짓을 다 해봤지만... 원인은 알 수가 없었다.

플랫폼변경하여 디버깅, 다른pc에서 빌드, 파일의 재배포 등등

구글링 결과 이와 같은 문제를 격는 사람이 많은 것 같았다. 




사용자 pc에서j 메세지를 가져올 수 없어 사진 찍어서 가져왔다. 

구글링해서 찾은 비슷한 에러 메세지 문구.


Stopped working

Problem signature:

Problem Event Name: CLR20r3

Problem Signature 01: XXXXXXXXXXX.exe

Problem Signature 02: 1.0.0.1

Problem Signature 03: 4f338fd9

Problem Signature 04: XXXXXXXXXXX

Problem Signature 05: 1.0.0.1

Problem Signature 06: 503f01b1

Problem Signature 07: 1b2b

Problem Signature 08: 17

Problem Signature 09: System.IO.FileLoadException

OS Version: 6.1.7601.2.1.0.256.1

Locale ID: 1042



하루를 고생하며 알아낸 것이 try catch엿다. ㅡㅡ;

이렇게 해놓으면 에러 발생시 메세지를 자세히 보여준다. ㅜㅜ 

상당히 허무하게 발견하였다. 



static void Main(string[] args)

{

    try

    {        

        Application.Run(MainForm);

    }

    catch(Exception e)

    {

        MessageBox.Show(e.Message);

    }

}


다음이 오류의 원인이었다. 

Infragistics DLL을 로드 할 수없다는 것이었다!!!!

확인해보니... 실제로 버전의 용량이 달랐다. ㅜㅜ

그러니 개발자 pc에서는 정상 작동을 한것이다..





Infragistics DLL도 같이 배포를 하였으나 잘못된 버전이 배포가 된 것이다.

개발자 pc에서는 정상 작동이 된 이유는 실행 파일이 있는 경로에 잘못 된 DLL이 있어도 제대로 된 DLL이 PC에 설치되어 있으니

그걸로 실행이 됐던 것이다.

하지만, 실 사용자 PC에는 다른 버전의 DLL이 있고 제대로된 DLL이 없으니 찾을 수 없었던 것이다...

그러니 FileLoadException에러가 나올 수 밖에...















반응형

댓글