我想对我公司的一个非常旧的软件进行更改。销售量。它是一个 VB5 项目。
为了清楚起见,我不能改变语言,必须绝对使用 VB5....(如果我能改用 C#,我现在会是地球上最快乐的人。)
这是问题所在。
我安装了 Microsoft Visual Basic IDE 并加载了 .VBP 文件。
我阅读了代码以了解哪个部分在做什么,但我希望逐步在屏幕上看到它(带断点的调试模式)。
所以,我打了一些断点并点击“播放”(调试按钮)但我得到了这个错误
Execution error '-2147024894 (80070002)': Automation Error
但奇怪的是,当我使用 .exe 时,软件工作正常,我认为这可能是调试器的问题。
从这里我有三个选择:
1-End program
它结束程序
2-Debug
它把我送到一行代码,但我不知道错误是什么。
这是它指向我的代码:
Private Sub Form_Load()
Dim strLangue As String
bBusy = False
Set gImgBackground = Me.imgBackground
Set gBackGround1 = LoadPicture(App.Path & "\images\bg1.gif")
Set gBackGround2 = LoadPicture(App.Path & "\images\bg2.gif")
Me.BackColor = &HC0E0E0
gIniPath = App.Path & "\posi1000.ini"
basMain.gLangFile = App.Path & "\" & inireadvalue(gIniPath, "general", "langfile", "")
If InStr(UCase(basMain.gLangFile), "FR") <> 0 Then
strLangue = "FR"
ElseIf InStr(UCase(basMain.gLangFile), "EN") <> 0 Then
strLangue = "EN"
Else
strLangue = "FR"
End If
strComType = UCase(inireadvalue(gIniPath, "general", "ComType", "MOELLER"))
If strComType = "MOELLER" Then
' Dim tJRT_COM As JRT_COM.TEST_MOELLER
' Set tJRT_COM = New JRT_COM.TEST_MOELLER
' Set tJRT_COM = New JRT_SUCOMA.JRT_SUCOMA
' Call tJRT_COM.openComDevice("COM1:19200", 0)
' Set Module1.MyJRT_COM = tJRT_COM
'' Dim t As String
'' Set tJRT_COM = JRT_COM.New(True)
' Set MyJRT_COM = CreateObject("JRT_SUCOMA.JRT_SUCOMA")
'MyJRT_COM = Ctype(
' Set MyJRT_COM = New JRT_SUCOMA.JRT_SUCOMA
'' Dim tJRT_COM As New JRT_SUCOMA.JRT_SUCOMA
'
'' Set tJRT_COM = Nothing
'
'' If Module1.MyJRT_COM.setComDevice(gComDevice, strLangue) = 0 Then
'' Module1.MyJRT_COM.
'' End If
'
ElseIf strComType = "OMRON" Then
' Set MyJRT_COM = New JRT_COM.JRT_OMRON
' Set MyJRT_COM = CreateObject("JRT_COM.TEST_OMRON")
' Set MyJRT_COM = MyJRT_COM_MOELLER
'' Else
'' Set MyJRT_COM = New JRT_COM.JRT_MOELLER
'' Set MyJRT_COM = CreateObject("JRT_COM.TEST_MOELLER")
End If
gOfflineMode = inireadvalue(gIniPath, "General", "OfflineMode", "0")
gComDevice = inireadvalue(gIniPath, "General", "ComDevice", "Com1:19200")
If inireadvalue(gIniPath, "General", "ShowSelectComDevice", "0") = "1" Then
If strComType = "MOELLER" Then
bBusy = True
If Module1.MyJRT_COM_MOELLER.SetComDevice(gComDevice, strLangue) = 0 Then
Call iniwritevalue(gIniPath, "General", "ComDevice", gComDevice)
End If
bBusy = False
ElseIf strComType = "OMRON" Then
bBusy = True
**********It point here**************************************************************
-> If Module1.MyJRT_COM_OMRON.SetComDevice(gComDevice, strLangue) = 0 Then
Call iniwritevalue(gIniPath, "General", "ComDevice", gComDevice)
End If
bBusy = False
End If
End If
End Sub
只是为了让你知道我没有写那个代码,我只是在做一些 mod 工作。
第三个选项:
3-Help
它给了我另一个错误
Cannot find the windows help.
我该怎么办???以前有人遇到过这个问题吗???