
Prototyping in Clarion a (non-Clarion) dll function
typedef struct _SM_BSP_GUI_CALLBACK {
PSM_BSP_SET_FINGER_STATUS SM_BSP_SetFingerStatus;
PSM_BSP_SET_MSG_INFOS SM_BSP_SetMsgInfos;
PSM_BSP_SET_BSP_STATUS SM_BSP_SetBSPStatus;
Quote:
} SM_BSP_GUI_CALLBACK, *PSM_BSP_GUI_CALLBACK;
sm_bsp_gui_callback group
sm_bsp_setfingerstatus short
sm_bsp_SetMsgInfos short
sm_bsp_SetBspStatus short
end
The only mystery left - and you need to consult the h files to solve it - is
pragma pack. at the minimum I would do this:
sm_bsp_gui_callback group
sm_bsp_setfingerstatus short
sm_bsp_SetMsgInfos short
sm_bsp_SetBspStatus short
pad short
end
Jim Kane
Quote:
> Hello anyone have any ideas??
> I am having some difficulty in prototyping the following in Clarion!
> Even in C++ I find it a little difficult to follow the meaning through
> correctly... I only need to define the struct _SM_BSP_GUI_CALLBACK in
> Clarion as all I need to do in this instance is set the contents to
NULL...
> but even this is proving to be difficult!
> Any help much appreciated!
> This is what I need to prototype in Clarion:
> typedef struct _SM_BSP_GUI_CALLBACK {
> PSM_BSP_SET_FINGER_STATUS SM_BSP_SetFingerStatus;
> PSM_BSP_SET_MSG_INFOS SM_BSP_SetMsgInfos;
> PSM_BSP_SET_BSP_STATUS SM_BSP_SetBSPStatus;
> } SM_BSP_GUI_CALLBACK, *PSM_BSP_GUI_CALLBACK;
> where:
> T__STATUS is a short
> and
> typedef T__STATUS
> (WINAPI * PSM_BSP_SET_FINGER_STATUS)(
> T__STATUS i_nFingerStatus,
> T__UCHAR * i_pImage,
> T__ULONG i_nRow,
> T__ULONG i_nCol,
> T__BOOL * o_pContinue
> );
> typedef T__STATUS
> (WINAPI * PSM_BSP_SET_MSG_INFOS)(
> T__INT i_nIdMsg,
> T__BOOL * o_pContinue
> );
> typedef T__STATUS
> (WINAPI * PSM_BSP_SET_BSP_STATUS)(
> T__UCHAR i_nIdStatus,
> T__BOOL * o_pContinue
> );