未找到方法或数据成员编译问题

时间:2014-08-29 14:20:43

标签: vb6 datamember

我有一个我没有创建的VB6项目,但是我必须更新,当我去编写exe时,我得到一个编译错误:找不到方法或数据成员,并且它也指向" SCom1.FileReceive"在下面的代码中。当我查看Main表单时,SCom1控件是PictureBox。

这段代码已经运行了5年,但我不知道为什么SCom1是一个图片框,或者为什么我收到错误,这是一个参考?我的SCom1看起来像MSComm功能?让我知道是否有人有任何想法,我只是不知道VB足以知道如何解决这个问题。谢谢

If SCom1.FileReceive = True Then   
WriteToLog (Now() & " FileReceive was true, now false")
    SCom1.FileReceive = False
End If

1 个答案:

答案 0 :(得分:5)

您打开代码的机器没有正确注册mscomm32.ocx文件或ocx文件。

当vb无法引用ocx时,它会将相关控件转换为图片框控件。

您需要做的是,关闭项目而不保存。然后打开system32文件夹并检查mscomm32.ocx文件。如果文件不存在那么你必须从intenet下载。在命令提示符下使用regsvr32命令注册文件。

在此之后,您可以打开vb6项目并开始工作。

=============================================== ==========

编辑:在答案的评论中包含更新,这将有助于将来的其他用户......: - )

如果方法名称看起来不熟悉已知的ocx文件(在本例中为SCom1。FileReceive),则缺少的组件可以是自定义的ocx文件。

因此,检查工作机器或项目文件夹中是否存在相关名称中的任何ocx文件(在本例中为SCom.ocx)。

如果这样的名称中存在文件,请使用regsvr32注册该文件(如果未注册),然后将其添加到工具箱,然后用相关控件替换图片框控件(确保名称为tally)。