GSoC: Implement the Explorer

David Hedberg david.hedberg at gmail.com
Thu Mar 24 09:51:03 CDT 2011


Hi Jay,

On Thu, Mar 24, 2011 at 05:16, Jay Yang <jkelleyy at gmail.com> wrote:
> Hello,
>
>    Since my first proposal got no response at all, I thought I'd offer
> another possible project I'm interested in. I looked a little into the
> "Implement the Explorer" project idea listed on the Summer of Code page on
> the wine wiki. I have a few questions as to what parts need to be
> implemented. Clearly, as stated by the description on the Summer of Code
> page, we have winefile, which does some of the things expected of explorer,
> but how far is winefile from a correct explorer implementation? Also would
> implementing Shell Extensions be a good Summer of Code project? In
> particular, I think it would be nice to have things like TortiseSVN working
> in wine.
>

I think winefile is pretty much a dead end as far as "correct"
Explorer implementations go. Assuming that we want something as close
to the native architecture as possible, the main functionality of the
windows explorer lies in libraries ( shell32.dll, explorerframe.dll,
..), used through COM. I did some work in this area last year, which
resulted in an implementation of the ExplorerBrowser control (see the
documentation for IExplorerBrowser on msdn [1]). I also just now
quickly fixed up the proof-of-concept "explorer" I hacked up last year
so that it at least compiles on my system (see [2]). It's not
beautiful (neither the code nor the interface), but it might give you
an idea of what the current state of affairs are. It runs on at least
wine and Windows 7, and should also run on Vista.

The code for creating new explorer windows should probably reside in
explorerframe.dll, somewhat analogous to how this works for the
Internet Explorer and shdocvw.dll.

As for TortoiseSVN I don't dare speak for what others might find
useful or how far we are from having that working, but in general
there's no lack of things in the shell subsystem that could use some
attention. Having explorer implemented and somewhat working would
undoubtedly also lead to more of these shortcomings surfacing and
hopefully getting some attention.


[1] http://msdn.microsoft.com/en-us/library/bb761909%28v=vs.85%29.aspx
[2] http://inget.dyndns.org:9999/wine_explorer/

--
David



More information about the wine-devel mailing list