How can I create a IDataObject instance with Delph

2019-07-07 19:40发布

问题:

This C++ code shows how OLE can be used to simulate a file drag and drop to simulate a 'Send to...' operation. This will open the standard mail client with the selected file(s) as an attachment, a very interesting alternative to the mailto: protocol handler.

Which is the best (short and safe) way to create the neccessary instance of IDataObject in Delphi?

I have found some code here but maybe there is a better solution.

回答1:

Porting the C++ code to Delphi probably isn't too difficult. Start with

type
  TDataObject = class(TInterfacedObject, IDataObject)

and implement the required methods as shown in the C++ example.