Alexandre Julliard wrote:
I think using COM for that sort of thing is overkill.
If we want to allow multiple implementations then using a structure with
callback functions is probably the easiest way. If we are using
structures with callback functions then why not to make it COM
interfaces - IMHO the overhead of adding the QueryInterface, AddRef,
Release is relatively small and we obtain structures with which probably
most of developpers are more of less familliar.
Besides, you
most likely want to put all of that in the explorer process, and
communicate with shell32 using the same protocol that Microsoft is
using, like we do already for the system tray.
For the Trash I don't know if there is any protocol. I've placed a
DELETE security audit on a file and it was the application trashing the
file that triggered it - so it seems Windows also doesn't need to
communicate with the explorer. For things like file associations, to
maintain compatibility we will need to keep the settings in the
registry. What we can do is to mirror the changes to the Linux database.
That's a feature that is not present in Windows so we can choose a protocol.
Mikolaj Zalewski