こんにちはすべて私はVB6のコード変換を介してVS 2008にいくつかのVB6のコードを変換しようとしています。ほとんどがうまくいくが、タッチアップが必要なものがいくつかある。VS6のAddressOfとコールバック
InitializeGrCap = GrCapInitialize(AddressOf GrCapStatusEventHandler)
そしてGrCapInitializeはこれです::
一つは、タッチアップは、コードのこの部分であることを特徴とする
Public Declare Function GrCapInitialize Lib "GrFinger.dll" Alias "[email protected]" (ByVal StatusEventHandler As Integer) As Integer
そしてGrCapStatusEventHandlerです:
Public Sub GrCapStatusEventHandler(ByVal pidSensor As Integer, ByVal eventRaised As Integer)
While fireStatus = True
System.Windows.Forms.Application.DoEvents()
End While
myPIdSensor = pidSensor
myEventRaised = eventRaised
fireStatus = True
While fireStatus = True
System.Windows.Forms.Application.DoEvents()
End While
End Sub
私は午前
エラー 'Integer'がデリゲートタイプではないため、 'AddressOf'式を 'Integer'に変換できません。
GrCapFingerEventHandler:...はこの1つにエラーがある再び
GrCapStartCapture(myIdSensor, AddressOf GrCapFingerEventHandler, AddressOf GrCapImageEventHandler)
そして、のAddressOf:
第二は、タッチアップは、このコードの一部であることを特徴とします。
Public Sub GrCapFingerEventHandler(ByVal pidSensor As Integer, ByVal eventRaised As Integer)
While fireFinger = True
System.Windows.Forms.Application.DoEvents()
End While
myPIdSensor = pidSensor
myEventRaised = eventRaised
fireFinger = True
While fireFinger = True
System.Windows.Forms.Application.DoEvents()
End While
End Sub
およびGrCapImageEventHandler:
Public Sub GrCapImageEventHandler(ByVal pidSensor As Integer, ByVal width As Integer, ByVal height As Integer, ByVal pRawImage As Integer, ByVal res As Integer)
While fireImage = True
System.Windows.Forms.Application.DoEvents()
End While
myPIdSensor = pidSensor
myWidth = width
myHeight = height
myRes = res
myRawImage = pRawImage
fireImage = True
While fireImage = True
System.Windows.Forms.Application.DoEvents()
End While
End Sub
そして再び、エラーがある: '整数' はデリゲート型ではありませんので、44 'のAddressOf' 式は '整数' に変換することはできません
エラー。
誰も私にこれらの2つのコード領域を.netに変換する手助けはできますか?
返信いただきありがとうございます。しかし、** InitializeGrCap = GrCapInitialize(新しいGrCapStatusCallback(AddressOf GrCapStatusEventHandler))に変更すると、同じエラーが発生する**エラー**エラーが発生する**エラー 'GrFingerSampleVB6.Callbacks.GrCapStatusCallback'の値を'Integer'。** – StealthRT
次に、私の答えで具体的に取り上げたアンマネージドメソッドの宣言を変更していません。 – jmcilhinney
ああ、それを忘れてしまいました。 OPの第2号はどうですか? – StealthRT