none
64bit System32 com 등록문제 RRS feed

  • 질문

  • 안녕하세요.

    64bit ocx, dll을 생성 후

    64bit  OS에서 System32 폴더에 위치

    regsvr32를 이용하여 ocx, dll을 레지스트리에 등록완료하였습니다.

    .net에서 참조 - com을 추가하는데

    목록에 위에 등록시킨 64bit ocx, dll이 보이질 않네요....

    System32 폴더에 위치시키지 않고 다른 폴더에 위치시켜 레지 등록하면

    그 때서야 참조 - com 추가 목록에 보입니다.

    그림으로 설명드리자면

    64bit os에서 system32 폴더안에서 ocx를 레지스트를 등록성공하고

    .net 프로젝트 에서 참조추가할 때

    보이질 않습니다. 찾아보기에서는 파일도 보이질 않네요..

    System32에서도 등록시켜 com 추가를 할 수 있는 방법을 알고싶습니다.

    좋은 개발되세요~




    • 편집됨 ktukyo 2015년 12월 8일 화요일 오전 7:55
    2015년 12월 8일 화요일 오전 7:00

답변

  • 이게 가상화 때문에 그런 것인데요. 32비트 프로그램이 64비트 운영체제에서 실행 중일 때 C:\Windows\System32 폴더가 자동으로  C:\Windows\SysWow64로 매핑시켜주기 때문입니다.

    이런 경우에 명시적으로 32비트 프로그램에서 64비트의 system32 폴더를 지정하기 위해 "C:\Windows\sysnative"라는 특별한 경로를 입력할 수 있습니다. 찾아보기 창에서 저 경로를 넣으시면 원래의 system32 폴더가 보일 것입니다.

    2015년 12월 9일 수요일 오전 12:30