[GSoC] Continue work on Games Explorer
vshader at gmail.com
Fri Mar 25 17:07:07 CDT 2011
In the last year's GSoC, I was working on implementation of Games
Explorer features under Wine. I have successfully created it's own
interfaces and made them working. However, the task proved harder than I
thought before, so I did not create a user-interface part of the
library. My idea for this summer is to finish the implementation of
gameux.dll - writing the Shell Extension for GE.
It would behave almost exact as the Windows equivalent - it should be
able to display registered games as shell items, with possibility to run
them, see the statistics etc.
Having this should give user-experience a great deal. However, in my
opinion it would be also a good way to check and extend the existing
implementation of shell32. As far as I know, there is currently no real
shell extension being part of Wine, so the working one would increase
compatibility a much.
There will be probably a problem with making my extension usable for
user, as there's no working explorer currently in Wine. However, as I
see, the implementation of explorer is one of popular proposal this
year. In my opinion, it would be good idea to cooperate my work on GE
Shell Extension with the person who will implement explorer.exe (if both
ideas will be selected for realization). This would probably improve the
quality of both projects.
Summarizing, my project assumes following things to do:
- write testing set to run under Windows. Tests will read the data
from GE using it's shell interfaces.
- creating stubs for shell interfaces. This will include following
interfaces IShellFolder(2/3?), IShellView, IPersistFolder, IEnumIDList,
IContextMenu, and probably a few other. I have created some stubs at the
end of last GSoC, but never committed them, as they were requiring a few
- implementing interfaces using the existing infrastructure inside of
gameux.dll. Routines giving access to list of installed games were
written by me last year, but there are still some missing parts which
must be filled to let shell interfaces return proper data.
- extending and fixing parts of shell32 (or other libraries) if
required. This is mostly undefined part of task, but I've listed it
here, cause I suppose this could take significant part of project's time.
If there will be still time after finishing the points above, I would
like to add one feature from my last-year proposal: a legacy games
support. When Microsoft introduced the Games Explorer in Vista, they
provided a big set of definitions of currently existing games to make
them visible in GE, without requirement of modifications in games. My
idea is to extend Wine's Application Database to allow it serve as
legacy games database for our GE. This would increment an user
experience from using the tool.
My name is Mariusz Pluciński. I'm 20 years old student of Information
Technology in Gdańsk University of Technology in Poland. Last year I was
successfully participating in GSoC in Wine project (project name was
"Implementation of Windows Game Explorer equivalent "), so my knowledge
seems to be enough to continue work with even better results.
Comments are welcome
More information about the wine-devel