我对VB代码没有任何经验。但我确实知道我的VB应用程序存在问题,该应用程序挂起了他的ocx。我可以在windbg中看到它一遍又一遍地抛出c000008f异常,我知道它只是VB异常处理而且它与“浮点精确结果”硬件异常无关(它只是微软的'辉煌' “实施方式”。
所以,问题。我如何找出问题究竟是什么?我这里没有安装Visual Studio,但我的笔记本电脑安装了VS 2010 Express。不过,我认为这也不会起作用,我需要Pro版本来调试这种东西。
此外,我启用了问题应用程序中的日志记录,这些是我得到的最后一行:
............. (bla bla bla) .............
[COVEControls] [00008.912]< -slbChart.ctl:Sub AddItem :( Label = DataObjs,Value = 0,Color =,LabelColor =):[res = 22%,mem = 2147483647]
[COVEControls] [00008.912] - > slbChart.ctl:Sub AddItem :( Label = Conts,Value = 1,Color =,LabelColor =):[res = 22%,mem = 2147483647]
[COVEControls] [00008.912] - > slbChart.ctl:Sub LayoutChart :():[res = 22%,mem = 2147483647]
[COVEControls] [00008.912]< -slbChart.ctl:Sub LayoutChart :():[res = 22%,mem = 2147483647]
[COVEControls] [00008.912]< -slbChart.ctl:Sub AddItem :( Label = Conts,Value = 1,Color =,LabelColor =):[res = 22%,mem = 2147483647]
[Cove] [00009.026] - > frmMain.frm:Sub COVE1_StatusMsg:(statMsg =获取卡片信息(读取总数和空闲数据空间)):[res = 22%,mem = 2147483647]
[Cove] [00009.026]< -frmMain.frm:Sub COVE1_StatusMsg:(statMsg =获取卡信息(读取总数和空闲数据空间)):[res = 22%,mem = 2147483647]
[COVEControls] [00008.948]< -COVE.ctl:Sub SetSizeBars :():[res = 22%,mem = 2147483647]
[COVEControls] [00008.949] - > COVE.ctl:Sub DrawPie :( pic =,shp0 =,shp1 =,pctFree = 0.9222):[res = 22%,mem = 2147483647]
[COVEControls] [00008.950] - > COVE.ctl:Sub DrawLayer:(pic =,shp =,pct = 7.779998E-02,color1 = 32768,color2 = 128):[res = 22%,mem = 2147483647]
[COVEControls] [00008.950]< -COVE.ctl:Sub DrawLayer:(pic =,shp =,pct = 7.779998E-02,color1 = 32768,color2 = 128):[res = 22% ,mem = 2147483647]
[COVEControls] [00008.950] - > COVE.ctl:Sub DrawLayer:(pic =,shp =,pct = 7.779998E-02,color1 = 32768,color2 = 128):[res = 22%,mem = 2147483647]
[COVEControls] [00008.950]< -COVE.ctl:Sub DrawLayer:(pic =,shp =,pct = 7.779998E-02,color1 = 32768,color2 = 128):[res = 22% ,mem = 2147483647]
[COVEControls] [00008.950] - > COVE.ctl:Sub DrawLayer:(pic =,shp =,pct = 7.779998E-02,color1 = 32768,color2 = 128):[res = 22%,mem = 2147483647]
[COVEControls] [00008.950]< -COVE.ctl:Sub DrawLayer:(pic =,shp =,pct = 7.779998E-02,color1 = 32768,color2 = 128):[res = 22% ,mem = 2147483647]
...
它只是无限地重复DrawLayer广告。崩溃应用程序的功能成功,您可以看到检索到的数据几秒钟,然后它停止更新客户端区域并转为白色,鼠标指针仍然是沙漏,应用程序没有响应,强制它后关闭它在报告细节中说:“hungapp”
所以,任何人都有一个如何找出它失败的线索?我真的需要Visual Studio Pro ftw吗? (o.o)'
答案 0 :(得分:1)
此异常代码由VB6内部使用。这是设计的。
模式信息:
INFO: Visual Basic Uses Exception Code 0xC000008F as Internal Exception Code
Old school debugging - VB6 middleware applications - c000008f
Are you aware that you have thrown over 40,000 exceptions in the last 3 hours?
答案 1 :(得分:0)
.ocx,.ctl和.frm扩展名是vb6 / Visual Studio 6的所有工件。您将无法使用当前安装的Express Edition编辑此项目,并且您将无法购买目前的“专业”来解决这个问题。 Visual Studio 6不再可在任何地方销售。