62 lines
1.6 KiB
Plaintext
62 lines
1.6 KiB
Plaintext
import "oaidl.idl";
|
|
|
|
|
|
cpp_quote("DEFINE_GUID(IID_IAutoSock, 0xbcc31109,0xe14a,0x11d2,0x83,0x5e,0x00,0x80,0xc7,0xe1,0x1d,0x99);")
|
|
|
|
cpp_quote("DEFINE_GUID(LIBID_AutoSockLib, 0x9ca6ce5e,0xe14a,0x11d2,0x83,0x5e,0x00,0x80,0xc7,0xe1,0x1d,0x99);")
|
|
|
|
cpp_quote("DEFINE_GUID(CLSID_AutoSock, 0x28cb3d0e,0xe14a,0x11d2,0x83,0x5e,0x00,0x80,0xc7,0xe1,0x1d,0x99);")
|
|
|
|
|
|
#define PROPERTY_RW(type, name, prid) \
|
|
[propget, id(prid)] \
|
|
HRESULT name([out, retval] type * pRetVal); \
|
|
\
|
|
[propput, id(prid)] \
|
|
HRESULT name([in] type NewVal)
|
|
|
|
|
|
#define PROPERTY_RO(type, name, prid) \
|
|
[propget, id(prid)] \
|
|
HRESULT name([out, retval] type * pRetVal)
|
|
|
|
|
|
#define PROPERTY_WO(type, name, prid) \
|
|
[propput, id(prid)] \
|
|
HRESULT name([in] type NewVal)
|
|
|
|
[
|
|
uuid(bcc31109-e14a-11d2-835e-0080c7e11d99),
|
|
object, dual, pointer_default(unique)
|
|
]
|
|
interface IAutoSock : IDispatch
|
|
{
|
|
HRESULT Connect(BSTR IpAddress);
|
|
|
|
HRESULT Send(BSTR Data);
|
|
HRESULT Recv([out, retval]BSTR *ppRetVal);
|
|
|
|
HRESULT Close();
|
|
|
|
};
|
|
|
|
|
|
[
|
|
uuid(9ca6ce5e-e14a-11d2-835e-0080c7e11d99),
|
|
version(1.0)
|
|
]
|
|
library AutoSockLib
|
|
{
|
|
importlib("stdole32.tlb");
|
|
importlib("stdole2.tlb");
|
|
|
|
[uuid(28cb3d0e-e14a-11d2-835e-0080c7e11d99)]
|
|
coclass AutoSock
|
|
{
|
|
[default] interface IAutoSock;
|
|
};
|
|
|
|
};
|
|
|
|
|