Use of delegate
- From: "Bob Simoneau" <bobsimoneau@xxxxxxxxxxxxxxxxx>
- Date: Fri, 6 Jan 2006 12:36:33 -0500
I am having a hard time with delegates, but here I must pass a delegate and
a pointer to a structure. I am totally lost. Passing the pointer to
rlistsys_resp_func and RLISTSYS_DETAIL is where I am lost. Any hint would
be highly appreciated.
C Header:
_declspec(dllexport) extern void rlistsys(RLISTSYS_PARMS *rlistsys_parms,
RLISTSYS_RESP *rlistsys_resp, void (*rlistsys_resp_func)(RLISTSYS_DETAIL
*));
VB.NET
Dim RLISTSYS_DETAIL As New TRLISTSYS_DETAIL
Dim objDelegate As RLISTSYS_FUNC
objDelegate = AddressOf RLISTSYS_FUNC_RUN
rlistsys(RLISTSYS_PARMS, RLISTSYS_RESP, objDelegate, RLISTSYS_DETAIL)
Module1
Public Delegate Sub RLISTSYS_FUNC(ByRef RLISTSYS_DETAIL As
TRLISTSYS_DETAIL)
Public Sub RLISTSYS_FUNC_RUN(ByRef RLISTSYS_DETAIL As TRLISTSYS_DETAIL)
frmMain.grd.Rows.Add(CleanInput(RLISTSYS_DETAIL.name), CleanInput
(RLISTSYS_DETAIL.description))
End Sub
Public Declare Function rlistsys Lib "remotapi.dll" (ByRef RLISTSYS_PARMS
As TRLISTSYS_PARMS, ByRef RLISTSYS_RESP As TRLISTSYS_RESP, ByRef
objDelegate As RLISTSYS_FUNC, ByRef RLISTSYS_DETAIL As TRLISTSYS_DETAIL) As
Integer
Error:
System.ArgumentException was unhandled
Message="Type could not be marshaled because the length of an embedded
array instance does not match the declared length in the layout."
Source="Chainlinkwork"
StackTrace:
at Chainlinkwork.Module1.rlistsys(TRLISTSYS_PARMS& RLISTSYS_PARMS,
TRLISTSYS_RESP& RLISTSYS_RESP, RLISTSYS_FUNC& objDelegate, TRLISTSYS_DETAIL&
RLISTSYS_DETAIL)
.
- Follow-Ups:
- Re: Use of delegate
- From: Brad Rogers
- Re: Use of delegate
- Prev by Date: Re: SetWindowsHookEx and VB.NET 2005
- Next by Date: Re: To VB or not to VB?
- Previous by thread: Re: SetWindowsHookEx and VB.NET 2005
- Next by thread: Re: Use of delegate
- Index(es):
Relevant Pages
|