创建一个新的VB6项目。将下面的代码粘贴为项目代码。命中跑。看看它会不会坠毁..。删除或简化代码中您喜欢的任何内容,然后它就会正常工作。,谁能解释一下为什么这会崩溃吗?
到目前为止,这已经在8台PC上进行了测试,它们都运行着Windows、Windows、Windows 7、Office 2010和Office 2007的各种组合。在Visual中对其进行测试的部分安装了VisualBasic6SP6。
Private Sub Sleep(ByVal nSeconds As Long)
Dim nStart As Long: nStart = Timer
Do
DoEvents
Loop Until (Timer - nStart) >= nSeconds
End Sub
Private Sub Crash()
Dim sTempPath As String: sTempPath = Space(255)
End Sub
Private Sub Form_Initialize()
Sleep 1
Crash
End Sub增编1:
我把它作为宏放在Excel2010中,用Workbook_Open()代替Workbook_Open(),当然,打开文档时也是如此。它坠毁了!
增编2:
在点击"Run“之前,我在每一行都添加了断点,在到达第一个断点之前,它就崩溃了。但是,如果我简化或删除其中的任何内容,它可以正常工作,不会崩溃。
增编#3:
他尝试了米西姆关于切除结肠的建议,但没有崩溃。把它加回去,再运行一次,它没有崩溃。关闭Visual,并放入原始代码,然后崩溃。
增编4:
VisualBasic6IDE中的问题详细信息:
问题签名:
问题事件名称: APPCRASH
应用程序名称: VB6.EXE
申请版本: 6.0.81.76
申请时间戳: 3592011f
故障模块名称: VBA6.dll
故障模块版本: 6.0.0.8169
故障模块时间戳: 358b0c74
例外代码: c0000005
异常抵消: 00026329
操作系统版本: 6.1.7601.2.1.0.256.4
地区编号: 1033
补充资料1: 7e3b
附加信息2: 7e3beb1e9ccf6d519c5b994ca59a280f
补充资料3: 7b83
附加信息4: 7b833c57ebcf 54809fd3aaccd8ea4f46在线阅读我们的隐私声明:
http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0409如果在线隐私声明不可用,请脱机阅读我们的隐私声明:
C:\Windows\system32\en-US\erofflps.txt
增编#5:
Microsoft 2010中的问题详细信息:
问题签名:
问题事件名称: APPCRASH
应用程序名称: EXCEL.EXE
申请版本: 14.0.4756.1000
应用时间戳: 4b9c08e8
故障模块名称: VBE7.DLL
故障模块版本: 7.0.15.90
故障模块时间戳: 4b7b1248
例外代码: c0000005
异常偏移: 00045b6a
操作系统版本: 6.1.7601.2.1.0.256.4
地区ID: 1033 有关问题的附加信息:
立法会编号: 1033
在线阅读我们的隐私声明:
http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0409如果在线隐私声明不可用,请脱机阅读我们的隐私声明:
C:\Windows\system32 32\en-US\erofflps.txt

发布于 2012-01-04 02:43:31
在回顾了您的问题和所有加载项之后,我意识到您的计算机正在运行发布版的VB6,而不是而不是 SP6。
您的崩溃详细信息表明了以下版本:
VisualBasic6.0 SP6文件的确切生成编号如下:
6.0.97.82
异常代码c0000005对应于模块vba6.dll中的访问冲突。在Microsoft KB上也记录了类似的问题
我还没有找到一个准确的源代码,列出了每个VB6服务包的构建号,但看起来这是RTM version。尽管您可能已经自己安装了SP6,但安装服务包后,流氓安装程序可能已经用旧版本覆盖了共享系统文件。这将解释为什么许多用户评论说,在一个看似相似的设置下,代码对他们很好。
https://stackoverflow.com/questions/8492373
复制相似问题