📄 isock.h
字号:
//********************************************************************************
// isock.h
//
//
// thyne richards 2/00
//********************************************************************************
#ifndef _ISOCK_H
#define _ISOCK_H
typedef struct tagISock
{
struct tagISockVtbl *lpVtbl;
} ISock;
typedef struct tagISockVtbl
{
int (*openthesocket) (ISock *This, SOCKET *RTPsock, CONN_DATA *pConnData);
int (*closethesocket) (ISock *This, SOCKET *RTPsock);
void (*SocketShutDown) (ISock *This);
void (*SocketStartup) (ISock *This);
int (*SocketDialog) (ISock *This, CONN_DATA*, char*, char*);
int (*SocketError) (ISock *This, int);
} ISockVtbl;
#define ISock_openthesocket(This, sock, condata) \
(This)->lpVtbl->openthesocket(This, sock, condata)
#define ISock_closethesocket(This, sock) \
(This)->lpVtbl->closethesocket(This, sock)
#define ISock_SocketShutDown(This) \
(This)->lpVtbl->SocketShutDown(This)
#define ISock_SocketStartup(This) \
(This)->lpVtbl->SocketStartup(This)
#define ISock_SocketDialog(This, condata, string1, string2) \
(This)->lpVtbl->SocketDialog(This, condata, string1, string2)
#define ISock_SocketError(This, number) \
(This)->lpVtbl->SocketError(This, number)
typedef struct tagCSock
{
ISockVtbl *lpVtbl;
// put any variables you need after the vtable
ISockVtbl Vtable;
} CSock;
#ifdef __cplusplus
extern "C" {
#endif
ULONG CreateSockInstance(void **ppv);
ULONG DeleteSockInstance(void *pv);
int CSock__openthesocket (ISock *This, SOCKET *RTPsock, CONN_DATA *pConnData);
int CSock__closethesocket (ISock *This, SOCKET *RTPsock);
void CSock__SocketShutDown (ISock *This);
void CSock__SocketStartup (ISock *This);
int CSock__SocketDialog (ISock *This, CONN_DATA*, char*, char*);
int CSock__SocketError (ISock *This, int);
#ifdef __cplusplus
}
#endif
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -