来自OCX的编译期间显示的消息框错误

时间:2019-01-04 11:33:08

标签: vb6

编译时,我在消息框中显示错误:

enter image description here

(再次注意,这不是运行时错误,而是编译时错误。在构建EXE时)。

VBCCR16是OCX库的名称,因此,显然,在引用它的项目的编译过程中,正在运行OCX中的某些代码。我不知道OCX / DLL代码是在编译时运行的。

我以前从未见过此事,正在尝试对其进行调试,但尚未成功。我曾尝试在Process Monitor&Process Explorer中查看VB6.exe及其编译器进程,但没有发现明显的继续。事件查看器也没有(没有条目)。

由于错误零在VB6中通常表示“无错误”,因此它本身似乎并不是有用的线索。

在编译过程中在OCX / DLL中调用什么代码?可能是什么原因造成的?

关于如何调试此问题的任何建议?


注1-此错误在我们的构建计算机(Win7虚拟机)上发生,但在编译过程中在我自己的PC上没有发生。如果仅在IDE中运行代码,也不会发生这种情况。

构建设置已经使用了多年,以前从未见过。我不认为这是内存或磁盘空间问题。


注2-我也有posted a question to the OCX library's author,但是我不确定这是否真的是库问题或其他问题,因此是这里的问题。


注释3-我刚刚看到this other question,它描述了编译期间要运行的代码。因此,这显然可以解释此问题的一般情况,而不是真正的根本原因。

1 个答案:

答案 0 :(得分:0)

该问题可能与设计者有关。 建议将设计器部件与上次编译的前一个源代码进行比较,以发现奇怪的更改,例如设置为CTX而不是特定字体的字体。 例如:

font            =   "MyControl.ctx":0848
instead of
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851} 
        Name         =   "MS Sans Serif"
        Size            =   9.75
        Charset         =   0
        Weight          =   400
        Underline       =   0   'False
        Italic          =   0   'False
        Strikethrough   =   0   'False
EndProperty