是这样的,我需要在VB2005中,调用一个外部的OCX控件。该控件中有这样一个方法:
Public Overridable Function FpGetEnrollData(ByRef fpData As Integer, ByRef fpSize As Integer) As Boolean
参数中的fpData是指向数组的指针,fpSize是指向Long型变量的指针。
请帮我看一下,如下的VB2005代码是否正确?
Dim vFpData(512) As Integer
Dim vFpSize(0) As Integer
Dim vbRet As Boolean
vbRet = PIS.FpGetEnrollData(vFpData(0), vFpSize(0))
由于在.net中很多关于指针的功能都被取消了,我不确定用vFpData(0)能否表示vFpData数组的地址,这是试图沿用VB6.0中的用法,一点把握都没有,并且代码运行也确实不正常。
比如那个fpSize的参数,本来没必要用数组,但我不知道如何获取指针,只好定义了只有1个元素的数组,并试图用vFpSize(0)来获取数组地址。请高手赐教!谢谢。
当运行到这一句时:
vbRet = PIS.FpGetEnrollData(vFpData(0), vFpSize(0))
程序会自动退出。无论是在调试环境还是在编译环境中。