0

VB6 を .NET に少し変換しようとしているのですが、次のエラーが表示されます。

タイプ 'System.InvalidCastException' の未処理の例外が Microsoft.VisualBasic.dll で発生しました

追加情報: 文字列 " " から型 'Integer' への変換は無効です。

次の .net コードは、CopyMemory(str_Renamed, ptr, count) でスタックする場所です。

Public Function ptrToStr(ByVal ptr As Integer) As String
Dim count As Integer
Dim str_Renamed As String

    count = lstrlen(ptr)

    If count Then
        str_Renamed = New String(vbNullChar, count)
        CopyMemory(str_Renamed, ptr, count)
        ptrToStr = str_Renamed
    Else
        ptrToStr = ""
    End If
End Function

これらの変数の値は次のとおりです。

count       = 4
ptr         = 268978536
str_Renamed = " "

このエラーを修正する方法がわかりません...

4

1 に答える 1