解决类似“的类 MSComctlLib.ImageList 不是一个已加载的控件类”。
有时可能我们对电脑安装了一些软件后,会导致我们的一些软件项目不能正常打开,或者项目能打开,但是项目里面的窗口设计界面却不能打开,当我们试图打开时,软件会闪退,今天跟大家分享一下处理该类问题的方法。
1.学会查看软件错误日志
例如下图中的.log文件,它们是软件在运行中发现错误时自动生成的,打开后我们可以看到错误出在什么地方。
2.尝试添加错误中提到的部件
以vb6.0为例,通过【工程】-【部件】,我们可以打开控件加载窗口,看一下我们是否加载了该部件。
如果加载了,部件会出现在这里,如下图:
3.部件都已加载了,那就要考虑软件或系统的问题了。
部件都已经加载了,依然没解决问题,而且故障信息中显示多个部件有问题,这就要通过下面的方法解决了,也就是系统中的msstdfmt.dll文件可能有问题,这里也只能说是可能,因为碰到的几次问题,最终解决的方法都是重新注册了msstdfmt.dll文件后,软件就正常了。
4、msstdfmt.dll注册方法
首先,我们要找到这个文件的位置。如果你是64位的系统,建议你直接到下面图中的路径去找:
为了确保该文件是不是在这里,我们可以搜索一下,我的电脑是64位的,所以搜索到了,如下图:
既然找到了地方,我们就开始学习一个通用的文件注册方法吧,首先打开CMD,以管理员身份运行:
上图中显示的位置是system32,不是msstdfmt.dll文件存放的地方,所以我们要修改进入目录,记住简单的指令:
cd..
这样我们就退出了一级目录,回到了windows目录,这时我们要进入包含在该目录的子目录syswow64中,这要用到的指令就是:
cd syswow64
这样我们就进入到了syswow64目录,接下来我们就要注册文件了,记住注册的命令是下面这样:
regsvr32 msstdfmt.dll
输入上面的命令然后点击回车,这时系统就会进行注册,上面一系列的操作,如下图:
注册成功会有弹窗,如果失败也会有,成功弹窗的截图如下:
到了这一步,我们再去打开软件,基本不会出现本讲解中所出现的问题现象了。关于大家碰到的一些奇葩问题,或者巧妙解决问题的经验,欢迎大家留言分享。