Max中ActiveX出错的解决方式

Max当中使用一些用到了ActiveX的脚本工具时会报错,信息大多为 Cannot create the ActiveX control : MSComctlLib...

一般是下图这样的对话框.

大部分原因是因为64位的max中一些控件被淘汰,换用32位的max即可。64位max下的脚本需要重写一部分。

如果你是用的32位的max,请往下看。

================无废话一二三步骤版========================

下载 https://files.cnblogs.com/sitt/MSCOMCTL.zip 解压缩

运行解出的regsvrOCX.bat,如果问题没有解决,重启计算机后重新运行。

=========以下是详细解释,有兴趣的同学可以继续=================

这个问题是因为系统中没有注册MSComctLib,这是微软自己的ActiveX控件,如果是其他的控件要找相应的文件处理(例如Flash的,就需要找Flash自己的)。

解决方式就是下载一个MSCOMCTL.ocx文件注册一下,或者从有该文件的系统中复制一个过来。

下载完成后,将该文件复制到windows目录下

然后在运行中执行 : regsvr32 MSCOMCTL.OCX

默认32的系统会在 WINDOWS\system32下查找这个文件,64则是windows\syswow64。

所以有可能会提示找不到文件之类的,此时可以执行

regsvr32 %WinDir%\MSCOMCTL.OCX

可能需要重启计算机才能起作用,注册成功的话会有如下对话框

当然,这个动作对美术同学来说可能繁琐。

技术美术的话应该提供简便的方式,比如使用bat

这里为了避免注册到和bat同目录下的ocx文件,我将该文件改了个名字,末位加了个 “_”

copy MSCOMCTL_.OCX %WinDir%\MSCOMCTL.OCX
regsvr32 %WinDir%
\MSCOMCTL.OCX

  

这里可以下载bat以及ocx https://files.cnblogs.com/sitt/MSCOMCTL.zip

原文地址:https://www.cnblogs.com/sitt/p/2148957.html