어제까지는 잘 동작했고, 해당 디바이스가 아닌 다른 디바이스에서는 잘 동작하는 괴이한 상황에 빠져서 디버깅 중
아래와 같은 문구를 확인하게 되었습니다.
"system.reflection.targetinvocationexception 호출 대상이 예외를 throw했습니다 "
"레지스트리에서 잘못된 인덱스 ''을(를) 읽었기 때문에 카운터 이름 데이터를 로드할 수 없습니다"
의 오류는 아래의 코드에서 발생한 것이 었고, 레지스트리 설정이 뒤틀려 성능 카운터 기능을 활용 할 수 없었던 것으로 파악했습니다. (발생 이유를 찾아보아야 하겠습니다.)
PerformanceCounter cpu_s = new PerformanceCounter("Processor", "% Processor Time", "_Total"); |
해결 방법
1. cmd 창(명령 프롬포트)를 관리자 권한으로 실행
2. lodctr/r을 실행
위 사진과 같이 오류 코드가 2로 떴지만 한번 더 실행을 하니 exe 파일이 정상 동작되는 것을 확인했습니다.
휴.... 다행이긴 한데, 발생 원인과 해결 방법 모두 파악을 하도록 노력해야겠습니다.
반응형
'개발 > C#' 카테고리의 다른 글
[C# - MariaDB] Multi line Insert 함수 (0) | 2022.06.25 |
---|---|
[C# - Winform] 모니터 확장(듀얼/트리플) 코드 및 팁 (0) | 2022.06.02 |