我有一个用于遗留应用程序的VB6项目,其中包含许多具有List View控件的表单。我最近打开了项目的最新版本,并收到了带有列表视图的每个表单的错误消息。当我检查日志文件时,它们都基本相同:"第74行:控件lvwListItems的类MSComctlLib.ListView不是加载的控件类。"只有行号不同。
我查看了引用和组件,发现Microsoft Windows Common Controls 6.0(SP6)没有按原样检查。我检查了一下并尝试打开其中一个表格。表格已加载但现在有一个列表视图应该是的图片框。另一种形式的列表视图完全缺失 - 只是一个应该存在的空白区域。我打开了以前版本的项目;它打开没有错误,并检查组件。当我打开表单时,它正确加载了List View控件。
我是否可以在当前版本中重新获得控件而无需从头开始重建?要做到这一点将是一个巨大的痛苦。我害怕检查组件并保存项目,以免失去对所有表单的控制。
系统信息:Windows 7 32位,VB6 Professional。所有常用控件都位于正确的位置(C:\ Windows \ system32)并已注册,事实证明以前的版本打开并具有所有正确的引用和控件。
当前版本列出了与之前版本位于同一位置的所有控件,该组件由于某种原因未进行检查,并且检查它并未将控件恢复。我该怎么办?
答案 0 :(得分:2)
VBP是a text file。我建议将当前版本的VBP与之前的版本进行比较,并复制引用Microsoft Windows Common Controls 6.0 (SP6)
的行。
该行可能看起来像这样(可能GUID字符串,版本号和文件名可能不同)。
Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0; MSCOMCTL.OCX
顺便问一下,您是否正在为此项目使用版本控制?颠覆或类似?如果没有,我强烈建议你这样做。