-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathIDL2.txt
98 lines (94 loc) · 3.44 KB
/
IDL2.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
import "oaidl.idl";
import "ocidl.idl";
[
object,
uuid(A1241FE6-B51F-42aa-877B-BFA47BEF3FC1),
dual,
nonextensible,
helpstring("IConnectFourGame Interface"),
pointer_default(unique)
]
interface IConnectFourGame : IDispatch
{
[id(1), helpstring("method EndGame")] HRESULT EndGame(void);
[id(2), local] BSTR GetClassID();
[id(3), helpstring("method GetGameDetails")] HRESULT GetGameDetails([out] BSTR* Name, [out] BSTR* Info, [out] BSTR* SeatList, [out] BSTR* CanChangeSeat, [out] BSTR* CanSelectSeat, [out] SHORT* MinParticipants, [out] SHORT* MaxParticipants, [out] BSTR* Avatar);
[id(4), helpstring("method Send")] HRESULT Send([in] LONG Id, [in] BSTR Name, [in] SHORT Type, [in] LONG ToId, [in] SHORT SendType, [in] BSTR Message, [in,out] BSTR* Data);
[id(5), helpstring("method EnumMembers")] HRESULT EnumMembers([in] LONG Current, [in] SHORT Level, [in] LONG Id, [in] BSTR Name, [in] SHORT Type, [in] LONG X, [in] LONG Y);
[id(6), helpstring("method JoinGroup")] HRESULT JoinGroup([in] LONG Id, [in] BSTR Name, [in] LONG X, [in] LONG Y, [in] LONG GroupId, [in] BSTR GroupName);
[id(7), helpstring("method LeaveGroup")] HRESULT LeaveGroup([in] LONG Id, [in] BSTR Name, [in] LONG GroupId, [in] BSTR GroupName);
[id(8), helpstring("method StartGame")] HRESULT StartGame([in] LONG Id, [in] BSTR Name, [in] LONG GroupId, [in] BSTR GroupName, [in] LONG LeaderId, [in] SHORT Capacity, [in] LONG Seat);
[id(9), helpstring("method SendFromService")] HRESULT SendFromService([in] LONG Id, [in] SHORT Type, [in] LONG SrvSendType, [in] BSTR Message, [in,out] BSTR* Data, [in] LONG ReqId);
};
[
uuid(A1241FE5-B51F-42aa-877B-BFA47BEF3FC1),
version(1.0),
helpstring("Connect Four COM Control 1.0")
]
library ConnectFourLib
{
importlib("stdole2.tlb");
[
uuid(A1241FE7-B51F-42aa-877B-BFA47BEF3FC1),
helpstring("Connect Four Events")
]
dispinterface _IConnectFourEvents
{
properties:
methods:
[id(1)]
void LeaveGroup();
[id(2)]
void GetPresenceInfo(
long Id,
BSTR* Nickname,
BSTR* Fullname,
BSTR* Location,
BSTR* Email);
[id(3)]
void GetParentWnd(long* hWnd);
[id(4)]
void SetGameWnd(long hWnd);
[id(5)]
void DupAvatar(
long ParentWnd,
long Seat);
[id(6)]
void SetAvatarPos(
long Seat,
short Left,
short Top,
short Width,
short Height);
[id(7)]
void EnumMembers(
long Id,
short MaxLevel);
[id(8)]
void Send(
long Id,
short SendType,
BSTR Message,
BSTR* Data);
[id(9)]
void QueryService(
long* Id,
short* Type);
[id(10)]
void SendToService(
long ServiceId,
long SrvSendType,
BSTR Message,
BSTR* Data,
long ReqId);
};
[
uuid(A1241FE8-B51F-42aa-877B-BFA47BEF3FC1),
helpstring("ConnectFour Class")
]
coclass ConnectFourGame
{
[default] interface IConnectFourGame;
[default, source] dispinterface _IConnectFourEvents;
};
};