未能实例化ActiveX控件'Microsoft FlexGrid Control,version6.0(sp6)'因为这需要设计时授权

第一步:regsvr32 Msflxgrd.ocx

VS2008选择完整安装也找不到MsFlexGrid控件的踪影了。这给我之前使用VC6添加过MsFlexGrid控件的MFC程序移植到vs2008下增加了很多困扰。几经尝试才找到解决方案,记录备忘。

首先本机肯定是没有Msflxgrd.ocx的,在有Msflxgrd.ocx的机器或者网上下载到Msflxgrd.ocx,放在"C:\WINDOWS\system32"目录下。

不注册控件的话还是不能用。在"开始"菜单搜索框执行"regsvr32 Msflxgrd.ocx",等待执行成功。

打开VS2008发现使用MsFlexGrid控件的资源可以打开了。

添加MsFlexGrid控件到VS2008工具栏:

在VS2008右侧"Toolbox"空白位置单击鼠标右键选择"Choose Items...",在打开的对话框中选择"COM Components"选项卡,找到"Microsoft FlexGrid Control,version 6.0",前面的复选框打钩确认即可。

如果按照上述注册步骤注册了表格控件之后打开程序提示"The ActiveX control "Microsoft FlexGrid Control,version 6.0"could not be instantiated because it requires a design-time license"的错误。原因是VS2008安装不完整,未安装VB,打开VS2008安装文件安装VB再重新打开程序即可解决。
 

Windows系统下运行某些程序时缺少“Msflxgrd.ocx”的解决方法

出现这样的错误就是系统缺少相应的库文件,我们安装即可。

  1. 下载Msflxgrd.ocx,这里提供一个下载网址:https://www.ocxme.com/files/msflxgrd_ocx
  2. 64位系统将文件复制/剪切到C:\Windows\SysWOW64目录,32位系统就复制到C:\Windows\SYSTEM32目录。
  3. 64位系统复制下面的一段命令 regsvr32 c:\Windows\SysWOW64\Msflxgrd.ocx,32位系统则是regsvr32 msflxgrd.ocx。
  4. 以管理员方式打开cmd窗口。
  5. 将上面复制的命令粘贴到cmd窗口,回车即可。

未能实例化ActiveX控件'Microsoft FlexGrid Control,version6.0(sp6)'因为这需要设计时授权

未能实例化ActiveX控件'Microsoft FlexGrid Control,version6.0(sp6)'因为这需要设计时授权

 

第二步:VS2010向工具箱中添加控件解决 未能实例化 设计时授”

VB6Controls.reg  

专门解决“VS2010向工具箱中添加控件解决 未能实例化 设计时授”的问题,只需要点击两下就可以把信息添加到注册表中