如何将VC下的回调函数转换成DELPHI
要求:把下面的结构转换成DELPHI的,现在只有回调函数不知怎么转换
VC版的:
CHANNEL_CLIENTINFO结构:
typedef struct{
char *m_sername;
char *m_username;
char *m_password;
WORD m_tranType;
WORD m_playstart;
BYTE m_ch;
HWND m_hVideohWnd;
HWND m_hChMsgWnd;
UINT m_nChmsgid;
int m_buffnum;
int m_useoverlay;
COLORREF nColorKey;
void (WINAPI *m_messagecallback)(LONG hHandle,int wParam,int lParam,void *context);
void *context;
}CHANNEL_CLIENTINFO;
说明:
m_sername:服务器名称,如果是通过转发服务器连接时需要该名称检索服务器;
m_username:用户名,长度不超过20个字符;
m_password:密码,长度不超过20个字符;
m_tranType:连接模式,1:UDP方式,2:多播方式,3:TCP方式;
m_playstart:启动实时预览,TRUE:成功连接服务器后开始实时预览图像,FALSE:连接服务器后不预览图像,可以调用VSNET_ClientStartView手动启动实时预览;
m_ch:连接服务器的通道;
m_hVideohWnd:播放窗口句柄;
m_hChMsgWnd: 通道消息通知窗口句柄,可以为NULL,用VSNET_ClientStartup注册的窗口接收消息
m_nChmsgid: 通道消息号;
m_buffnum: 播放用的缓冲大小,范围10-50,值越小可能会有丢失包的问题,越大效果越好,但会占用更过的内存;
m_useoverlay:OVERLAY使用标志,TRUE:表示创建OVERLAY的表面,如果OVERLAY表面创建失败,会自动使用其它的表面;
nColorKey:保留;
m_messagecallback:消息回调函数
context:用户上下文
现已DELPHI部分参数:
type
channel_clientinfo = record
m_sername:string; //服务器名称
m_username:string; //登陆用户名
m_password:string; //登陆密码
m_tranType:word; //连接模式(=1:UDP,=2:多播,=3:TCP)这里采用3=TCP
m_playstart:word; //启动实时预览
m_ch:byte; //视频服务器通道号
m_hVideohWnd:HWND; //播放窗口句柄
m_hChMsgWnd:HWND; //通道消息通知句柄
m_nChmsgid:uint; //通道消息号
m_buffnum:integer; //播放用的缓冲大小
m_useoverlay:integer; // Overlay使用标志
nColorKey:Colorref; //
//void (WINAPI *m_messagecallback)(LONG hHandle,int wParam,int lParam,void *context);
//VC消息回调函数怎么转换成delphi的
context:string;
end;
请各位高手指点,十万火急。