Я пытаюсь использовать этот отличный пример для реализации перетаскивания виртуальных файлов в Windows Explorer. Однако я забита этой ошибкой. Внизу, внутри void System.Runtime.InteropServices.ComTypes.IDataObject.GetData(ref System.Runtime.InteropServices.ComTypes.FORMATETC formatetc, out System.Runtime.InteropServices.ComTypes.STGMEDIUM medium)
при первом вызове ((System.Runtime.InteropServices.ComTypes.IDataObject)this).GetDataHere(ref formatetc, ref medium);
я получаю ошибку DV_E_FORMATETC
. Насколько я могу судить, все элементы структуры FORMATETC, которые передаются, являются действительными: cfFormat - это "Shell IDList Array" (-16141), ptd - 0, dwAspect - DVASPECT_CONTENT, lindex - -1, а tymed - TYMED_HGLOBAL. Я в некотором роде смущен тем, как возникнет проблема, так как она была сгенерирована проводником.
Я очень мало знаю о взаимодействии COM, поэтому любая помощь будет принята с благодарностью.