Segin wrote:


If this was to be done, there are a few things I suggest:

First should be everything that Freedesktop.org has laid out, and nothing more. That does into the FD.org integration code. For a lot of this to work, Wine may have to be ran as a system service (is that even a good idea?).

I don't know what you mean by a system service but there will be no need for a new kind of processes. The Trash code can run in the client's process. Checking the Start Menu and HKEY_CLASSES_ROOT needs to be done in a separate process/thread and but as I see the wine explorer is used for such tasks. No privileges are required as the code can create the menu items/MIME entries in the home directory (and it is probably the desired way as by default wine is installed in each home directory for the current user only).

Each part of the integration profiles that is Wine-specific code should be done like the audio drivers, a Wine .drv.so or similar. shellfdorg.drv.so for Freedesktop, shellkde3.drv.so for KDE 3, shellkde.drv.so for generic KDE (stuff that works on both 3 and 4), and so on.

I was thinking about COM interfaces. Then the code would be in regular DLLs with no need for a special infrastructure. The shell32_unix.dll from my proposal was what you call shellfdorg.drv.so, the shell32_kde.dll is the shellkde.drv.so etc.

Mikolaj Zalewski


Reply via email to