static void test_dragdrophelper(void) { IDragSourceHelper *dragsource; IDropTargetHelper *target; HRESULT hr; hr = CoCreateInstance(&CLSID_DragDropHelper, NULL, CLSCTX_INPROC_SERVER, &IID_IDropTargetHelper, (void **)&target); ok(hr == S_OK, "Failed to create IDropTargetHelper, %#x\n", hr); hr = IDropTargetHelper_QueryInterface(target, &IID_IDragSourceHelper, (void **)&dragsource); ok(hr == S_OK, "QI failed, %#x\n", hr); IDragSourceHelper_Release(dragsource); IDropTargetHelper_Release(target); }
/************************************************************************** * IDropTargetHelper_Constructor */ HRESULT WINAPI IDropTargetHelper_Constructor (IUnknown * pUnkOuter, REFIID riid, LPVOID * ppv) { dragdrophelper *dth; HRESULT hr; TRACE ("outer=%p %s %p\n", pUnkOuter, shdebugstr_guid (riid), ppv); if (!ppv) return E_POINTER; if (pUnkOuter) return CLASS_E_NOAGGREGATION; dth = LocalAlloc (LMEM_ZEROINIT, sizeof (dragdrophelper)); if (!dth) return E_OUTOFMEMORY; dth->IDropTargetHelper_iface.lpVtbl = &DropTargetHelperVtbl; dth->IDragSourceHelper_iface.lpVtbl = &DragSourceHelperVtbl; dth->ref = 1; hr = IDropTargetHelper_QueryInterface (&dth->IDropTargetHelper_iface, riid, ppv); IDropTargetHelper_Release (&dth->IDropTargetHelper_iface); return hr; }