有关ActiveX控件ADODC和DataGrid在VC++下面的使用
2012-02-29 13:02
204 查看
系统环境:Windows 7 + VC6.0 + VS2008
当在VC++6.0中"Project"-->"Add to Project"-->"Componets and Controls"-->"Register
ActiveX Controls", 找到Microsoft ADO Data Control 6.0 (SP6) (OLEDB), 进行插入时候, 出现以下消息框。
---------------------------
Components and Controls Gallery
---------------------------
Microsoft ADO Data Control 6.0 (SP6) (OLEDB)
不支持此接口
---------------------------
在我的电脑上也安装了VS2008, 我用2008尝试插入Microsoft ADO Data Control 6.0 (SP6) (OLEDB)时, 能够正确插入。 所以, 这个可能是系统版本的问题。
------------------------------------------------------------------------------------------------------------------------------------------------------------------
如果在vs2008或者2010中找不到上面控件Microsoft ADO Data Control 6.0 (SP6) (OLEDB)和Microsoft DataGrid控件时, 原因是这两个ActiveX控件没有被注册。
需要注册,步骤如下:
1. 先到C:\WINDOWS\system32目录下看看你的系统里是否已经有了MSADODC.ocx和MSDATGRD.ocx这两个文件,没有就去下载, 下载下来这两个文件后放到C:\WINDOWS\system32目录下;
2.注册MSADODC.ocx和MSDATGRD.ocx这两个控件。 方法是打开命令提示符窗口,输入如下命令: regsvr32 msadodc.ocx 回车regsvr32 msdatgrd.ocx回车, 现在再 Insert ActiveX Contrls下看看吧,是不是出现了Microsoft Ado Data Control和Microsoft Data Grid
Control两个选项啊?现在就可以在工程中使用它们了。另外,这两个控件都是6.0版本的,早在VC++ 6.0时它们就已经出现了,但实验发现它在VS 2005, VS2008, VS2010下也能正常使用。至于它们可能存在的更高版本或其它的ADO控件大家可以自己试着摸索着添加一下吧。
有时候在安装这两个控件 用DataGrid绑定数据库时 会出现 cannot initialize data binding 错误 ,产生这种错误一般是因为
需要注册一下MSSTDFMT.DLL才可以。那么就再把它加到安装包里面,安装完成之后测试,这下真的没问题了!原来MSSTDFMT.DLL是微软标准数据格式对象相关动态链接库文件,引用名称为“Microsoft Data Formatting Object Library”,如果在开发程序中有数据绑定,就是通过它对数据格式化后再绑定到控件的。虽然有时候程序里面没有对它进行引用,但如果用到数据绑定控件,那么就要记得把MSSTDFMT.DLL加到安装程序里面。
下面是对OCX控件或者DLL动态链接库文件的注册语法
文件注册regsvr32 文件名
解除注册regsvr32 文件名 /u
不弹出信息框regsvr32 文件名 /i
regsvr32 文件名解除注册regsvr32 文件名 /u不弹出信息框regsvr32 文件名 /i
当在VC++6.0中"Project"-->"Add to Project"-->"Componets and Controls"-->"Register
ActiveX Controls", 找到Microsoft ADO Data Control 6.0 (SP6) (OLEDB), 进行插入时候, 出现以下消息框。
---------------------------
Components and Controls Gallery
---------------------------
Microsoft ADO Data Control 6.0 (SP6) (OLEDB)
不支持此接口
---------------------------
在我的电脑上也安装了VS2008, 我用2008尝试插入Microsoft ADO Data Control 6.0 (SP6) (OLEDB)时, 能够正确插入。 所以, 这个可能是系统版本的问题。
------------------------------------------------------------------------------------------------------------------------------------------------------------------
如果在vs2008或者2010中找不到上面控件Microsoft ADO Data Control 6.0 (SP6) (OLEDB)和Microsoft DataGrid控件时, 原因是这两个ActiveX控件没有被注册。
需要注册,步骤如下:
1. 先到C:\WINDOWS\system32目录下看看你的系统里是否已经有了MSADODC.ocx和MSDATGRD.ocx这两个文件,没有就去下载, 下载下来这两个文件后放到C:\WINDOWS\system32目录下;
2.注册MSADODC.ocx和MSDATGRD.ocx这两个控件。 方法是打开命令提示符窗口,输入如下命令: regsvr32 msadodc.ocx 回车regsvr32 msdatgrd.ocx回车, 现在再 Insert ActiveX Contrls下看看吧,是不是出现了Microsoft Ado Data Control和Microsoft Data Grid
Control两个选项啊?现在就可以在工程中使用它们了。另外,这两个控件都是6.0版本的,早在VC++ 6.0时它们就已经出现了,但实验发现它在VS 2005, VS2008, VS2010下也能正常使用。至于它们可能存在的更高版本或其它的ADO控件大家可以自己试着摸索着添加一下吧。
有时候在安装这两个控件 用DataGrid绑定数据库时 会出现 cannot initialize data binding 错误 ,产生这种错误一般是因为
需要注册一下MSSTDFMT.DLL才可以。那么就再把它加到安装包里面,安装完成之后测试,这下真的没问题了!原来MSSTDFMT.DLL是微软标准数据格式对象相关动态链接库文件,引用名称为“Microsoft Data Formatting Object Library”,如果在开发程序中有数据绑定,就是通过它对数据格式化后再绑定到控件的。虽然有时候程序里面没有对它进行引用,但如果用到数据绑定控件,那么就要记得把MSSTDFMT.DLL加到安装程序里面。
下面是对OCX控件或者DLL动态链接库文件的注册语法
文件注册regsvr32 文件名
解除注册regsvr32 文件名 /u
不弹出信息框regsvr32 文件名 /i
regsvr32 文件名解除注册regsvr32 文件名 /u不弹出信息框regsvr32 文件名 /i
相关文章推荐
- 有关ActiveX控件ADODC和DataGrid在VC++下面的使用
- 有关ActiveX控件ADODC和DataGrid在VC++下面的使用
- 有关ActiveX控件中的DataGrid或ADO Data控件在vc++6.0和VS 版本中的使用
- 使用VC2008创建基于ATL的ActiveX控件,不自动调用OnCreate函数
- VC DataGrid使用问题
- VC DataGrid的简单使用范例
- 有关在IE中使用ActiveX控件时的安全提示问题
- VC使用ActiveX控件常见问题
- 如何使用VC++ 2005 给ActiveX控件添加方法,属性,事件
- VC++使用ActiveX控件连接和操作数据库
- C#中使用VC ActiveX控件
- [转载]VC中如何调试和使用ActiveX控件
- VC使用ActiveX控件常见问题
- vs2008使用adodc,datagrid,datalist
- VC DataGrid使用问题,在其它电脑上,应用数据程序弹出“未成功配置,应用程序无法启动”
- VC++.NET 开发MFC数据库管理系统全记录[ADODC+DataGrid](2005-6-2)
- [转载]VC中如何调试和使用ActiveX控件 (2010-11-04 15:12:56)
- 如何使用VC++ 2005 给ActiveX控件添加方法,属性,事件
- 直接使用默认设置进行打印:(3)使用VC开发ActiveX控件实现打印中文字符串
- VC中ADO连接数据库,如何使用Datagrid显示的问题