42 lines
808 B
Plaintext
42 lines
808 B
Plaintext
|
#include "stdinc.idl"
|
||
|
|
||
|
cpp_quote("#if !defined(__cplusplus)")
|
||
|
typedef struct CSxApwActCtxHandle CSxApwActCtxHandle;
|
||
|
cpp_quote("#else")
|
||
|
cpp_quote("class CSxApwActCtxHandle;")
|
||
|
cpp_quote("#endif")
|
||
|
|
||
|
[
|
||
|
object,
|
||
|
local,
|
||
|
uuid(IID_ISxApwActCtxHandle_midl)
|
||
|
]
|
||
|
interface ISxApwActCtxHandle : IUnknown
|
||
|
{
|
||
|
/* the 64bit porting guide informs us that the better design is
|
||
|
HRESULT
|
||
|
Activate(
|
||
|
[out] IUnknown** cookie
|
||
|
);
|
||
|
so that server/client death is nicely handled by COM freeing all objects
|
||
|
but this would force more heap allocation on us.
|
||
|
*/
|
||
|
HRESULT
|
||
|
Activate(
|
||
|
[out] unsigned __int64* cookie
|
||
|
);
|
||
|
|
||
|
HRESULT
|
||
|
Deactivate(
|
||
|
[in] unsigned __int64 cookie
|
||
|
);
|
||
|
|
||
|
HANDLE
|
||
|
GetHandle(
|
||
|
);
|
||
|
|
||
|
CSxApwActCtxHandle*
|
||
|
GetCPlusPlusObject(
|
||
|
);
|
||
|
};
|