views:

432

answers:

1

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.

+2  A: 

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.

TOndrej
Yes I agree it actually looks not so hard to port. Maybe I could use the GetUIObjectOf method of IShellFolder, see my Delphi code example link, without implementing IDataObject.
mjustin