본문 바로가기
Program/C++ MFC

[MFC / C++] Cognex In-Sight Wafer Install error (Error 1935. assembly component)

by 냠만 2024. 6. 2.

[ActiveX 컨트롤 에러]


MFC에서 View에 특정 ActiveX 컨트롤을 당겨와서 사용하는 경우 해당 프로그램이 컴퓨터에 설치되어 있지 않다면 Visual Studio로 해당 소스를 오픈할 때 컨트롤 에러가 발생합니다.


'이 컴퓨터에 ActiveX 컨트롤이 등록되지 않았습니다. 컨트롤을 등록한 다음 다시 시도하십시오.'


해당 에러는 불러와지지 않는 View에 어떤 ActiveX를 당겨와서 사용하는지 알아야 오픈이 가능하기 때문에 개발자는 반드시 정보를 백업하며 개발해야 합니다.
만약 백업된 정보가 없다면 Debug를 통해 어떤 다이얼로그를 오픈할 때 에러가 발생하는지 찾아야 합니다.

필자는 Cognex In-Sight 프로그램이 설치되지 않아 발생했습니다.
그러나 설치 도중 다른 에러를 발견했습니다.

[Error 1935]


Error 1935. An error ocurred during the installation of assembly component
이 에러는 처음보는 에러기 때문에 일단 재부팅을 한번 하고 진행했습니다. 반드시 재부팅 후 재설치를 시도해 보고 다음스텝으로 넘어가야 합니다.



error 1935를 조금 구글링해보면 다른 프로그램을 설치하거나 windows에서 사용되는 에러 종류인걸 확인할 수 있습니다.
해당 문제 발생 시 cmd창에 fsutil resource setautoreset true C:\ 를 입력하면 The Operation completed successfully. 메시지를 뱉으면서 적용됩니다.
그러나 cognex in-sight 설치 시 조치가 되지 않았습니다.

해결방법은 다른 사이트에서 찾았습니다.
해당 사이트 링크를 참조해 놓으니 혹여 다른 해결 방법으로 해결이 될 경우를 참고해서 첨부해 놓겠습니다.


필자는 가장 하단부에 있는 Office관련 레지스트리를 제거하고 정상 설치되었습니다.



[조치 방법]


먼저 Regedit에 접속합니다. 항목명은 레지스트리 편집기로 실행창에 입력하면 됩니다. 윈도우 10 이상 일 경우 왼쪽 하단 윈도우 검색창에 레지스트리편집기를 입력해도 찾을 수 있습니다.



레지스트리 편집기에 접속했다면 아래 경로로 이동합니다.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office

여기서 OfficeSoftwareProtectionPlatform이라는 폴더를 제거해주면 되는데, 필자는 해당 폴더가 이미 제거되어 있어 보이지 않습니다.
해당 폴더는 정품인증이 되지 않았거나 인터넷에 다운받은 폴더가 안전하지 않는 경우 offcie 자체에서 경고메시지를 띄우는 기능이라 실제 사용에는 아무 관련이 없는 폴더이므로 삭제해도 기능 구현에는 이상이 업습니다.


추가적으로 이 폴더를 삭제하게되면 MS Office 오류코드 1920 osppsvc service error를 해결할 수 있다고도 합니다.
여러모로 말썽을 부리는 레지스트리니 삭제하는 것이 좋겠습니다.

삭제 후 재부팅하면 정상적으로 설치되는걸 확인할 수 있습니다.
그럼 모두 건투를 빕니다.