@pymethod |pythoncom|CoCreateFreeThreadedMarshaler|Creates an aggregatable object capable of context-dependent marshaling.
| 1177 | |
| 1178 | // @pymethod <o PyIUnknown>|pythoncom|CoCreateFreeThreadedMarshaler|Creates an aggregatable object capable of context-dependent marshaling. |
| 1179 | static PyObject *pythoncom_CoCreateFreeThreadedMarshaler(PyObject *self, PyObject*args) |
| 1180 | { |
| 1181 | PyObject *obUnk; |
| 1182 | if ( !PyArg_ParseTuple(args, "O:CoCreateFreeThreadedMarshaler", |
| 1183 | &obUnk )) // @pyparm <o PyIUnknown>|unk||The unknown object to marshal. |
| 1184 | return NULL; |
| 1185 | |
| 1186 | IUnknown *pUnk; |
| 1187 | if (!PyCom_InterfaceFromPyObject(obUnk, IID_IUnknown, (void **)&pUnk, FALSE)) |
| 1188 | return NULL; |
| 1189 | |
| 1190 | IUnknown *pUnkRet; |
| 1191 | PY_INTERFACE_PRECALL; |
| 1192 | HRESULT hr = CoCreateFreeThreadedMarshaler(pUnk, &pUnkRet); |
| 1193 | pUnk->Release(); |
| 1194 | PY_INTERFACE_POSTCALL; |
| 1195 | if (FAILED(hr)) |
| 1196 | return PyCom_BuildPyException(hr); |
| 1197 | return PyCom_PyObjectFromIUnknown(pUnkRet, IID_IUnknown, FALSE); |
| 1198 | } |
| 1199 | |
| 1200 | // @pymethod |pythoncom|CoMarshalInterface|Marshals an interface into a stream |
| 1201 | static PyObject *pythoncom_CoMarshalInterface(PyObject *self, PyObject*args) |
nothing calls this directly
no test coverage detected