启动VB6 IDE时,“对象'〜'的方法'〜'失败”

时间:2011-12-20 10:01:54

标签: vb6

我注意到大约每三次左右启动VB6 IDE,会出现一个消息框,出现以下错误消息: -

Method '~' of object '~' failed

对于任何特定项目或我注意到的任何其他共同点,都不会发生这种情况。在解除消息后,它不会出现导致任何问题。我的问题是:我应该为此担心,如果是这样,我该怎么办呢。

我已经注意到有关同一错误消息hereherehere的其他问题,但我收到有关打开项目的消息。

8 个答案:

答案 0 :(得分:3)

我曾经偶尔遇到此错误,在我的情况下,它是由Visual Source Safe加载项引起的(我猜错安装;重新安装纠正了问题)。它从来没有引起过问题;这只是一个麻烦。正如Jon在评论中所述,我会尝试关闭加载项以查看是否能解决问题。另一件事是确保您运行Service Pack 6。

答案 1 :(得分:3)

这通常是由本地计算机上的锁定剪贴板引起的。 VB6 IDE加载项使用剪贴板将图标复制/粘贴到工具栏按钮,因为加载项API不会公开任何其他方式将图像放在那里。

通常,远程桌面客户端(mstsc.exe)是锁定剪贴板的罪魁祸首。 Microsoft实现传输到远程剪贴板的方式是通过探测本地剪贴板的可用格式来锁定它一段时间。剪贴板是一个设计非常好的全局资源,一次只能由一个进程访问,如果资源当前不可用,OpenClipboard API就会在其他进程中失败。

答案 2 :(得分:1)

我卸载了Visual Studio 6.0,然后重新安装它。这清除了对象'〜'失败'的“方法'〜'错误”。我的VB 6现在似乎运行正常。我认为,就我而言,它与几个未正确注册的COM对象有关。我的新机器从我的旧盒子里收到了一张鬼影,上面有VS.

答案 3 :(得分:1)

我开始在我的两台开发机器(一个32位,另一个64位)上突然出现此错误。在我寻找解决方案时,有人对SourceSafe进行了切向引用。

啊,然后我发现我最近清理了一个项目(清除.bak文件等),其中一个我清理过的文件是'MSSCCPRJ.SCC'(看看SourceSafe是怎么回事 - 对于我们的团队 - 一个遥远的遗物,我觉得“安全”从项目文件夹中删除这个文件。)

长话短说:将文件'MSSCCPRJ.SCC'恢复到项目文件夹,解决了这个错误。

答案 4 :(得分:1)

我在Windows Server 2012 R2上运行VB6时遇到此错误。违规插件是Visual Component Manager 6.0。禁用后,IDE可以在没有Content-Type: application/json问题的情况下打开。我不确定这是指向安装问题还是只是"古代" a"现代"上的软件OS。

对于其他试图在Windows 7,8,10,22012等上安装VB6的人,这里有一些有用的链接:

http://www.fortypoundhead.com/newbrowseresults.asp?catid=34

http://it.toolbox.com/blogs/locutus/how-to-install-visual-studio-6-onto-windows-10-70155

答案 5 :(得分:1)

我不知道这个特定错误,但我确实有一些关于此错误消息的背景信息。

COM定义了两个级别的错误信息。所有COM方法和属性都具有HRESULT类型的返回值,其中0(S_OK)表示成功,负值表示错误。此外,还有一种机制可以提供所谓的“丰富的错误信息”。

如果COM对象生成丰富的错误信息,VB6将显示提供的信息。如果COM对象返回负值,但没有提供丰富的错误信息,则VB6显示消息“方法'〜'对象'〜'失败”。

有一些标准错误代码,如E_POINTER和E_NOTIMPL,它们通常由C ++中的COM对象返回。所有这些导致消息“方法'〜'对象'〜'失败”。

如果您在C ++中实现COM对象,我的建议是始终生成丰富的错误信息。 (在ATL中你只需要调用Error函数。)

答案 6 :(得分:1)

在Windows 7 Ultimate台式机上通过VB6项目的快捷方式(当然,它会启动VB6)启动VB6时,我也有同样的经历。通知框标题为“ Visual Component Manager”,消息为“对象'〜'的方法'〜'失败”。在IDE中可见项目之前,第一次启动VB6 IDE时会发生这种情况。多年来,我一直在同一个项目中使用此过程,没有出现任何问题,但是今天该消息框弹出并必须得到确认。我今天做的不同的一件事是,我认为这是造成我的问题的原因,它是先启动Excel 2007工作簿,然后在大约三秒钟后启动VB6项目。两者都在同时加载,它们可能在为各自需要的东西而战。单独启动我的VB6项目永远不会导致这种情况。查看所有这些响应,一个共同的思路似乎是VB6无法在需要时访问某些资源。没有任何答复表明这是一个严重的问题。实际上,在释放资源之前,这似乎只是一个小小的“打ic”。

答案 7 :(得分:1)

我找到了最终的解决方案!

要避免在“ VB6 IDE启动时”出现“对象'〜'的方法'〜'”消息并避免运行任何“ Windows Installer”消息:

  1. 通过VB6.exe属性(在Windows资源管理器中右键单击文件后),确保VB6.exe的兼容性设置为“在Windows 8中运行”模式。
  2. 确保将VB6.exe快捷方式设置为不以管理员身份运行。

使用这些设置,可以加载任何加载项(包括Visual Component Manager 6!)

我花了很长时间才解决这个问题,但是现在VB6以闪电般的速度加载,并且没有令人讨厌的错误消息。