过程声明与同名事件或过程描述不匹配

问题解决不了,哪位大神帮帮忙啊
2024-11-15 22:29:27
推荐回答(2个)
回答1:

解决方法一:工程->引用->microsoft activeX data object....勾掉,向下找microsoft activeX data object 2.0 library 勾上

解决方法:将vb程序关闭后,再次打开这个程序时又出现"会出现过程声明与同名事件或过程的描述不匹配"了.以前修改的引用又回到microsoft activeX data object 2.5 library了.原先修改的应用没有得到保存.那该怎么解决呢?

主要原因是:ado控件版本不对

解决方法:Adodc控件自动引用microsoft activeX data object 2.0
library,但系统会自动引用microsoft activeX data object 2.5
library。你用记事本打开.vbp文件看看,是否包含下面两行内容,其中Adodc控件版本为6.0,引用库为2.0:打开工程vbp文件
修改下面不同的地方 希望能解决你的问题

Reference=*\G{00000205-0000-0010-8000-00AA006D2EA4}#2.5#0#C:\Program
Files\Common Files\System\ado\msado25.tlb#Microsoft ActiveX Data
Objects 2.5 Library

Reference=*\G{00000200-0000-0010-8000-00AA006D2EA4}#2.0#0#C:\Program
Files\Common Files\System\ado\msado20.tlb#Microsoft ActiveX Data
Objects 2.0 Library

或者:你将原有的Adodc控件删除,再添加一个,然后在代码窗口中创建一个Adodc1_MoveComplete事件处理子程序,其中肯定没有pError参数,也肯定不会出错。将2.0还是改成2.5。Adodc控件使用2.0
Private
Sub Adodc1_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal
pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal
pRecordset As ADODB.Recordset20)
Adodc1.Caption = "当前记录:" & Adodc1.Recordset.AbsolutePosition & "/" & Adodc1.Recordset.RecordCount
End Sub
更改了ado的版本,由默认的2.5改为2.0即可

回答2:

可能是少了参数,删除过程,重新自动生成这个过程。