|
在64位系统中,由于MSComCtl 控件无法正常使用,会造成以前32位版本编写的部分调用了这类控件的VBA程序无法正常运行。
MSComCtl 控件包括了:TabStrip, Toolbar, StatusBar, ProgressBar, TreeView, ListViews, ImageList, Slider, ImageComboBox这些控件,都是一些比较人性化的控件。
由于 2013以及以下版本使用的VBA还是VBA6,它并没有真正的64位的版本,所以还可以通过一些方法使用回原来的MSComCtl。
部分设备由于安装过OFFICE的64位版本,可能已经在系统中默认会有这个控件的存在,如我装过OFFICE2013,所以在C:\Windows\SysWOW64目录下存在着MSComCtl.ocx文件,而部分没有装过的,则不会出现这个文件,需要从原来的C:\Windows\system32目录中复制过去并注册。
注册的方法如下:
一、复制软件中自带的MSCOMCTL.OCX文件 或者另外下一个MSCOMCTL.OCX文件
复制“MSCOMCTL.OCX”文件到“C:windowssyswow64”文件夹中
二、点击开始菜单,搜索到 cmd程序。(一定一定要以管理员身份运行)
三、在dos窗口中输入如下命令(如下图所示):
cd[回车键]
cd windows[回车键]
cd syswow64[回车键]
regsvr32 MSCOMCTL.OCX[回车键]
使用以上方法可以解决在AutoCAD 2013及以下版本的VBA某些控件的使用问题,但到了AutoCAD2014版本后,由于VBA升级到了VBA7,而64位的VBA7是真正的64位系统,此时不管你怎么使用以上方法,就是无法在控件列表中显示出这些控件。
所以这个问题在AutoCAD 2014中暂时还无法解决。
下面是2013的控件列表:
px1i33rvqoo.jpg
下面是2014的控件列表:(很明显是没有了MSCOMCTL.ocx文件中的那些控件了)
jirkrr0cnvy.jpg
uxp40vznwwr.png
该贴已经同步到 本帖以下内容被隐藏保护;需要你回复后,才能看到! 游客,如果您要查看本帖隐藏内容请 回复 |
|