#1프로그래밍/#5 C#

[C#] DLL 'xxxxx' 을(를) 로드할 수 없습니다. (HRESULT: 0x8007007E)

HopeDeveloper 2022. 11. 9. 14:28

1. C# Winform 실행시 DLL 로드 실패 에러 발생
System.DllNotFoundException: DLL 'xxxx'을(를) 로드할 수 없습니다. 지정된 모듈을 찾을 수 없습니다. (예외가 발생한 HRESULT: 0x8007007E)

 

2. 확인 사항

- 실행 파일 폴더내에 dll파일 존재
- 개발 환경에서 정상 동작 -->다른 PC에서 debug 폴더 그대로 복사하여 실행시 에러 발생
- 개발 환경 : 실행 환경 OS(windows 10 pro), x64 동일

 

3 . 보조 프로그램에서 xxxx.dll파일 참조하는 다른 dll을 확인
  - 방법 1) depends.exe(Dependency Walker)
      --> windows10의 경우 실행시간이 너무 오래 걸림  

 - 방법 2) https://github.com/lucasg/Dependencies/releases/download/v1.11.1/Dependencies_x64_Release.zip
        --> DependenciesGui.exe 실행

실행 결과 위 2개 파일이 참조가 되지 않음

VRULNTIME140D.dll
ucrtbased.dll

 

4) 해경 방법

  - 같은 폴더에 위 2개 파일을 넣어서 실행하니 정상 동작

 

 

* 소감 
  - 난감했다. xxxx.dll만 있으면 되는줄 알았는데...
  - xxxx.dll을 참조하는 dll파일이 있어야 하는줄.. 아마 개발 환경 PC에서는 비쥬얼 스튜디오 or onenote 가 설치되면서 sysem32 경로에 추가된거 같다.