打开一个VB6项目,我会收到以下错误:
加载过程中出现错误。请参阅xyz.LOG
我打开日志文件并看到以下错误:
第42行: control的类Threed.SSPanel不是加载的控件类。
在本例中,我可以看到问题是由Sheridan 3D控件造成的:C:\WINDOWS\system32 32\THREED32.OCX
我认为项目缺少一个组件,所以,VB6 > project > Components >勾选Sheridan3D控件,并得到了以下错误:
名称与现有模块、项目或对象库相冲突。
发布于 2017-08-10 08:44:24
我会给你最好的方法来解决这个问题。我遇到过很多种方式,但这是最好的处理方法。
结束这个项目。右键单击vb项目并使用记事本打开(而不是使用vb)。此项目文件将仅由项目中使用的所有引用、库和有关表单和模块的信息组成。
现在只要删除冲突的模块或组件文件,您就会有问题,只需删除整行。保存并关闭它,现在打开项目并添加组件。我发誓你不会犯那个错误的。
谢谢。尽情享受
发布于 2014-11-10 02:41:11
解决此问题的方法是启动一个新的VB6项目>项目菜单组件>勾选受影响项目中选择的组件,直到得到错误为止。
名称与现有模块、项目或对象库相冲突。
你需要把它缩小到两个互相冲突的OCX。
在我的例子中,我将范围缩小到Sheridan 3D控件/ THREED32.OCX和外旋控制/ SPIN32.ocx。
为了解决这个问题,我使用了RegSvr32来注销OCXs -确保使用/u标志的unregister。
REGSVR32 "C:\WINDOWS\system32\THREED32.OCX" /u
然后,我将OCX复制到项目文件夹中,并再次使用以下方法注册:
REGSVR32 "C:\Dev\Project\THREED32.OCX"
然后,在有问题的项目>项目菜单组件>选择列表框中的项目Sheridan 3D控件/ THREED32.ocx (您不能勾选错误或取消选择为其使用的冲突错误)>单击Browse并从项目文件夹引用它,而不是C:\WINDOWS\system32 32\
另一个窍门是关闭项目并取消受影响的ocx注册--确保使用unregister标志(如/u标志)来注册它。
RegSvr32 "c:\Windows\system32\mscomctl.ocx" /u
然后打开项目> Components >,您将看到“MicrosoftWindowsCommonControls6.0 (SP6)”使用C:.\Microsoft Vi..\VB98\mscomctl.ocx中的OCX文件,而不是c:\Windows\system32\mscomctl.ocx。
然后,项目应该在没有这些错误的情况下加载:
Errors during load. Refer to xyz.LOG
发布于 2020-11-12 14:16:22
尝试从引用中取消检查最新的对象库/引用,然后再次检查它,然后进行所需的引用(vb6有几个错误,可以通过反向进程来抵消)。我用这个过程解决了提到的错误。
https://stackoverflow.com/questions/26835929
复制相似问题