1
問題のAPIリファレンスはhereです。vbでlinphone_core_get_callsをインポートして呼び出すにはどうすればよいですか?
私はどのようにDLLIMPORT適切に知っているし、その後、VBでこれを使用する必要があります。
const bctbx_list_t* linphone_core_get_calls ( LinphoneCore * lc )
私はとのトラブルを抱えている部分がconst bctbx_list_t*
戻り値です。
<DllImport(LIBNAME, CallingConvention:=CallingConvention.Cdecl)>
Private Shared Function linphone_core_get_calls(lc As IntPtr) As List(Of IntPtr)
End Function
し、このようにそれを使用して::
Dim CurrentCallList As List(Of IntPtr) = linphone_core_get_calls(_LinPhoneCore)
コンパイルしますが、私にエラー与える:任意の助けをいただければ幸いです
Cannot marshal 'return value': Generic types cannot be marshaled.
を私はこのようなDLLIMPORTを宣言しようとしました。
なぜ、 'bctbx_list_t'は.NETの' List'と同じだと思いますか?それはほとんど間違いない。 'bctbx_list_t'型がどこで定義されているかを見て、それをより良く宣言する方法を見てください。それが不透明なオブジェクトなら、 'IntPtr'として宣言してください。 – GSerg
@GSergありがとうございました。 –