困扰了2天的问题,终于解决了。VB6的MSComCtl.ocx在32位Win7显示对象库未注册

 解决方案在这里,中文的资料真的挺垃圾的。(重启几次之后又不行了。。。。怎么回事???)

安装.net framework4.0以上版本,

C:WindowsSystem32C:WindowsMicrosoft.NETFrameworkv4.0.30319 egtlibv12.exe "c:windowssytem32msdatsrc.tlb"

https://www.fmsinc.com/MicrosoftAccess/controls/mscomctl/index.htm

https://social.msdn.microsoft.com/Forums/vstudio/en-US/193b5c10-59c4-4d9c-9aff-d036086c741f/cannot-register-mscomctlocx-in-windows-7-32-bit

https://support.microsoft.com/zh-cn/help/2597986/ms12-060-description-of-the-security-update-for-office-2010-august-14

https://stackoverflow.com/questions/15614730/object-library-not-registered-when-adding-windows-common-controls-6-0

 http://www.kimgentes.com/worshiptech-web-tools-page/2014/7/19/loading-using-visualbasic-6-legacy-projects-on-windows-7-how.html

32 Bit Windows

    1. Unregister the new OCX file. Open an instance of the Windows Command Prompt, paste the following command, and press <Enter>:
      Regsvr32.exe /u C:WindowsSystem32MSCOMCTL.OCX
    2. Make a backup of the OCX file C:WindowsSystem32MSCOMCTL.OCX to C:WindowsSystem32MSCOMCTL.bak
    3. Copy a legacy version of the MSCOMCTL.OCX file to your C:WindowsSystem32 folder. For your convenience, a zipped copy from 2011 is here.
    4. Register this legacy OCX file with the following command:
      Regsvr32.exe C:WindowsSystem32MSCOMCTL.OCX
    5. Unregister this legacy version of the OCX file:
      Regsvr32.exe /u C:WindowsSystem32MSCOMCTL.OCX
    6. Delete the legacy OCX file: C:WindowsSystem32MSCOMCTL.OCX
    7. Rename the new OCX file we renamed in step 2, back to its original name:
      C:WindowsSystem32MSCOMCTL.bak to C:WindowsSystem32MSCOMCTL.OCX
    8. Re-register the new version of the OCX file. Paste the following command and press <Enter>:
      Regsvr32.exe C:WindowsSystem32MSCOMCTL.OCX
    9. Reboot the computer.
    10. Open Microsoft Access and then retest the control. It should be working at this point.
原文地址:https://www.cnblogs.com/zitjubiz/p/VB6_IDE_Object_library_not_registered_mscomctl.html