0
我需要使用Delphi管理OLE拖放操作。現在我遇到了問題 - 我需要將TStream中的一些數據放入全局TStgMedium中(通過使用IDataObject的OLE方法發送它)。Delphi:如何將TStream中的數據放入TStgMedium進行OLE處理?
我想應該有一些常用的模式來做到這一點?你能提供一些示例代碼嗎?
我需要使用Delphi管理OLE拖放操作。現在我遇到了問題 - 我需要將TStream中的一些數據放入全局TStgMedium中(通過使用IDataObject的OLE方法發送它)。Delphi:如何將TStream中的數據放入TStgMedium進行OLE處理?
我想應該有一些常用的模式來做到這一點?你能提供一些示例代碼嗎?
這可能是最容易使用TStreamAdapter
到TStream
實例改編成IStream
。
另一種突破方法是將HGLOBAL
傳遞給IDataObject.SetData
,但對於大型數據流來說效率會有些低下。
好的,但如何將生成的IStream存儲到TStgMedium中? – Andrew 2011-04-15 09:26:35
將其分配給'TStgMedium.stm'並將'TStgMedium.tymed'設置爲'TYMED_ISTREAM' – 2011-04-15 09:35:54
謝謝!很簡單。你還可以展示HGLOBAL方法的例子嗎? – Andrew 2011-04-15 09:37:56