<?xml version="1.0" ?>
<kc>

<title>Wine Traffic</title>

<author contact="http://www.theshell.com/~vinn">Brian Vincent</author>
<issue num="232" date="23 Jul 2004 00:00:00 -0800" />
<intro> <p>This is the 232nd issue of the Wine Weekly News publication.
Its main goal is to assemble desks. It also serves to inform you of what's going on around Wine. Wine is an open source implementation of the Windows API on top of X and Unix.  Think of it as a Windows compatibility layer.  Wine does not require Microsoft Windows, as it is a completely alternative implementation consisting of 100% Microsoft-free code, but it can optionally use native system DLLs if they are available.   You can find more info at <a href="http://www.winehq.org">www.winehq.org</a></p> </intro>
<stats posts="147" size="639" contrib="53" multiples="23" lastweek="19">

<person posts="13" size="41" who="Mike Hearn" />
<person posts="13" size="31" who="Alexandre Julliard" />
<person posts="10" size="99" who="Robert Reif" />
<person posts="10" size="30" who="Robert Shearman" />
<person posts="9" size="100" who="Francois Gouget" />
<person posts="8" size="21" who="Ferenc Wagner" />
<person posts="7" size="19" who="Jeroen Janssen" />
<person posts="6" size="17" who="Shachar Shemesh" />
<person posts="6" size="12" who="Andreas Mohr" />
<person posts="4" size="10" who="Dmitry Timoshkov" />
<person posts="3" size="15" who="Dan Kegel" />
<person posts="3" size="13" who="Michael Jung" />
<person posts="3" size="11" who="James Hawkins" />
<person posts="3" size="7" who="Francois Gouget" />
<person posts="3" size="6" who="Marcus Meissner" />
<person posts="3" size="55" who="Marcelo Duarte" />
<person posts="2" size="14" who="Filip Navara" />
<person posts="2" size="11" who="Jeff Cooper" />
<person posts="2" size="7" who="Nicolai Kuntze" />
<person posts="2" size="5" who="Saulius Krasuckas" />
<person posts="2" size="5" who="Mike McCormack" />
<person posts="2" size="5" who="Jon Griffiths" />
<person posts="2" size="4" who="Stefan Leichter" />
<person posts="1" size="6" who="christoph kunz" />
<person posts="1" size="5" who="Magnus Olsen" />
<person posts="1" size="5" who="David Miller" />
<person posts="1" size="4" who="Katia Maculan" />
<person posts="1" size="4" who="Chipzz" />
<person posts="1" size="4" who="Zach Gorman" />
<person posts="1" size="3" who="Dan Timis" />
<person posts="1" size="3" who="Shachar Shemesh" />
<person posts="1" size="3" who="J. Wesley Cleveland" />
<person posts="1" size="3" who="Uwe Bonnes" />
<person posts="1" size="3" who="(jeremy)" />
<person posts="1" size="3" who="Jeremy Newman" />
<person posts="1" size="3" who="Diego 'Flameeyes' Petteno" />
<person posts="1" size="2" who="Christian Costa" />
<person posts="1" size="2" who="Michael Schluter" />
<person posts="1" size="2" who="Joel Konkle-Parker" />
<person posts="1" size="2" who="Paul Millar" />
<person posts="1" size="2" who="Vincent B&#233;ron" />
<person posts="1" size="2" who="Jeroen Janssen" />
<person posts="1" size="2" who="Gerald Pfeifer" />
<person posts="1" size="2" who="Eric Pouech" />
<person posts="1" size="2" who="Scott Snell" />
<person posts="1" size="2" who="Lionel Ulmer" />
<person posts="1" size="1" who="(jake)" />
<person posts="1" size="1" who="(maillard.emmanuel)" />
<person posts="1" size="1" who="Ivan" />
<person posts="1" size="1" who="Steven Edwards" />
<person posts="1" size="1" who="(truiken)" />

</stats>
<section 
	title="News: Wine-20040716, ELX BizDesk 4.0" 
	subject="News"
	archive="http://www.winehq.com/?announce=1.90"
	posts="1"
	startdate="17 Jul 2004 00:00:00 -0800"
	enddate="23 Jul 2004 00:00:00 -0800"
>
<topic>News</topic>
<mention></mention>
<mention>Microsoft</mention>
<mention>DesktopOS.com</mention>
<mention>News</mention>

<p>New Wine release.. lots of new goodies:</p>
<quote who="Alexandre Julliard">
<p>WHAT'S NEW with Wine-20040716: (see 
 <a href="http://cvs.winehq.com/cvsweb/wine/ChangeLog?rev=1.85&amp;content-type=text/x-cvsweb-markup">ChangeLog</a> for details)
<ul>
       <li> Implementation of the Microsoft Installer dll.</li>
       <li> Beginnings of proper inter-process window repaints.</li>
       <li> Several DirectSound improvements.</li>
       <li> Fixes for the regressions caused by the new filesystem support.</li>
       <li> Lots of bug fixes.</li>
</ul>
</p></quote>
<p>
  As always, you can find links to the source and binary distributions at
  the 
  <a href="http://www.winehq.com/site/download">WineHQ download page.</a>
  Of course, since it came out almost a week ago it's already out of date
  compared to CVS.  To stay on the bleeding edge try downloading it
  <a href="http://www.winehq.com/site/cvs">from CVS</a> (or keep reading   
  for a thread on where to find CVS snapshots.)
</p>

<p>
There's a review of ELX BizDesk 4.0 on DesktopOS.com.  If you 
<a href="http://www.desktopos.com/sections.php?op=viewarticle&amp;artid=29">skip
to page 3</a> you'll find short mention of 
<a href="http://www.frankscorner.org/winetools/">WineTools</a>
being packaged with it.  That's the first time I've
heard of it being shipped with a distro.</p>

</section>
<section 
	title="MSIExec.exe Replacement" 
	subject="msiexec.exe replacement"
	archive="http://www.winehq.com/hypermail/wine-patches/2004/07/0208.html"
	posts="4"
	startdate="18 Jul 2004 00:00:00 -0800"
>
<topic>Status Updates</topic>
<mention></mention>
<mention>Microsoft</mention>
<mention>Mike McCormack</mention>

<p>I don't directly cover a lot of patches that go into Wine.
Partly because I feel if I write about what one person has
accomplished I should write about what everyone has.  Often
large patches do generate discussion on wine-devel, so I do
cover them in the context of the discussion.  Last week I 
included Mike McCormack's status update on Microsoft Installer
work (issue 
<a href="http://www.winehq.com/?issue=231#Status%20of%20MSI">#231</a>)
and he mentioned there was no actual implementation of msiexec.exe
to go along with it.  Lest anyone out there is actually working 
on it you should note that Vincent B&#233;ron came up
with an initial implementation:</p>

<quote who="Vincent Beron"><p>
Note: Much functionnality is still absent, but it's already able to
begin the installation of iTunes.msi and netfx.msi.
I plan on updating this in the coming days.
</p><p>
Changelog:
<ul>
First draft for a msiexec.exe replacement.</ul></p></quote>

</section>
<section 
	title="Translating Wine" 
	subject="Localization status"
	archive="http://www.winehq.org/hypermail/wine-devel/2004/07/0316.html" 
	posts="1"
	startdate="21 Jul 2004 00:00:00 -0800"
>
<topic>status Updates</topic>
<mention></mention>
<mention>Marcus Meissner</mention>

<p>Marcelo Duarte posted an update on the status of
Wine's translation and about a new tool to help in
localization efforts:</p>

<quote who="Marcelo Duarte">
I modified a tool that Vincent B&#233;ron made and thus we can have the 
status of the translation of some languages. Case somebody wants that I 
add others I inform me.
We can see that some languages are well complete, as the Portuguese ;)
</quote>

<p>Marcelo included 
<a href="http://www.winehq.com/hypermail/wine-devel/2004/07/0316.html">the output</a>
in his email for German, English, Spanish, French, Italian, 
and Portuguese.  Perhaps not so coincidentally there were 
some patches for the German translations by Henning Gerhardt
and Marcus Meissner that appeared this week.  Ivan Leo Puoti 
also provided some Italian translations.</p>

</section>
<section 
	title="Daily CVS Snapshots" 
	subject="daily wine cvs source snapshots?"
	archive="http://www.winehq.com/hypermail/wine-devel/2004/07/0321.html" 
	posts="4"
	startdate="22 Jul 2004 00:00:00 -0800"
>
<topic>WineHQ</topic>
<mention></mention>

<p>Jeroen Janssen asked,
<quote who="Jeroen Janssen">
 Would it be possible to have daily cvs snapshots (cvs export) of the wine
 HEAD tree?</quote></p>

<p>It's such a good idea that we already thought of it.  Um.. except
we forgot to tell anyone.. or maybe we used to tell people but then
we changed the website and forgot about it.  Andi Mohr replied first 
with a link,
<quote who="Andreas Mohr">
Err... we've already been having that for a VERY long time ;-)
<a href="http://lisas.de/~andi/wine_files/wine-cvs-hopefully-current.tar.bz2">
http://lisas.de/~andi/wine_files/wine-cvs-hopefully-current.tar.bz2</a>
(I thought that was mentioned at WineHQ? Not sure, though, especially with
all those changes in the meantime...)</quote></p>

<p>Jeremy Newman pointed out that WineHQ also has CVS repository available,
<quote who="Jeremy Newman">
We also tar up the entire CVS on our main ftp server here:
<a href="ftp://ftp.winehq.org/pub/wine/">
ftp://ftp.winehq.org/pub/wine/full-cvs-2004-07-21.tar.gz</a></quote></p>
<p>Keep in mind the link Jeremy provided is for the full CVS
and is quite large.</p>
</section>
<section 
	title="Stubbing a COM Interface" 
	subject="urlmon missing InternetSecurityManager"
	archive="http://www.winehq.org/hypermail/wine-devel/2004/07/0259.html" 
	posts="5"
	startdate="19 Jul 2004 00:00:00 -0800"
>
<topic>Creating Stubs</topic>
<mention></mention>
<mention>Unknown</mention>

<p>In a different thread, Jeroen wanted to know how to go about
implementing some new functionality.. or at least starting to by
stubbing out an interface:</p>
<quote who="Jeroen Janssen"><p>

It seems urlmon is missing a (stubbed) IInternetSecurityManager Interface
(see also
<a href="http://msdn.microsoft.com/workshop/security/szone/reference/ifaces/iinternetsecuritymanager/iinternetsecuritymanager.asp">
http://msdn.microsoft.com/workshop/security/szone/reference/ifaces/iinternetsecuritymanager/iinternetsecuritymanager.asp</a> ).
</p><p>
Since I am new to this, I was wondering how I can create a stubbed
implementation. As far as I can tell I need to:
<ol>
<li> update the urlmon.idl (add IInternetSecurityManager)</li>
<li> create a stubbed implemenation in <tt>dlls/urlmon/</tt>; making sure the stubbed
interface also gets registered during 'wineprefixcreate'.</li></ol>
</p><p>
Are there any (wine) pointers on implementing a new (stubbed) COM interface?
</p></quote>

<p>Mike McCormack confirmed the first point and clarified the second
point,
<quote who="Mike McCormack">right... though you should only need to add
an implementation of URLMON_DllRegisterServerEx to make that work, 
assuming that wine.inf already tries to register urlmon.dll</quote>
Mike offered a tip too,
<quote who="Mike McCormack">
It's nice to have a test program (usually built on a windows machine) to 
test your new interface.  Make sure you get the right number of methods 
in the right order, with the right calling convention and arguments. 
You need to implement IUnknown manually.  You probably want to reference 
another piece of code that already implements a COM interface... there's 
plenty in dlls/shell32 and dlls/ole32.  (eg. dlls/shell32/shelllink.c)
</quote></p>

<p>Rob Shearman pointed out another thing that had to be done,
<quote who="Rob Shearman">
You will need to update the corresponding urlmon.h header file too, so 
that it can be used by C code. You can do this by running "make idl" in 
the wine/include/ directory.
Lionel Ulmer had a script to create a stubbed out COM interface, so 
maybe he could give you the script or create the interface for you. 
However, given the relatively small number of methods in 
IInternetSecurityManager it might be just as easy to create it by hand.
</quote></p>

<p>Jeroen wondered why that script wasn't in the tools/ directory
and Lionel replied,
<quote who="Lionel Ulmer">
Because it was an unmanageable Python hack that worked for me after a lot of
tweakings (for DirectX and QUARTZ).</quote></p>

</section>
<section 
	title="Out of Tree Builds" 
	subject="build problem"
	archive="http://www.winehq.org/hypermail/wine-devel/2004/07/0242.html" 
	posts="4"
	startdate="18 Jul 2004 00:00:00 -0800"
	enddate="19 Jul 2004 00:00:00 -0800"
>
<topic>Build Process</topic>
<mention></mention>

<p>Stefan Leichter ran into a problem with out of tree builds,
<quote who="Stefan Leichter">
When i have a changed spec 
file for a dll in the build tree it does not get used. The spec file from the 
source tree is used.  Can this be fixed?
</quote></p>

<p>Alexandre didn't see what the problem was since the spec file
belonged in the source tree.  Stefan described how he was trying
to work:</p>
<quote who="Stefan Leichter"><p>
My computer has a cvs (source) tree and the build tree. When I make 
changes to test something, I copy the source file to be changed for the 
source tree into the build tree and modify it. After this I run 
configure, make depend, make and make install in the build tree to get 
the changes into the wine binary.
</p><p>
If a C source file or a header file exists in the build tree it is used 
instead of the file in the source tree. Spec files in the build tree are 
ignored. They are always used from the source tree. Therefore I have to 
edit the Makefile in the build tree to use the modified spec file, or 
like the dll.so file by hand.
</p><p>
Hope my problem is explained clearer now. Do I use an undocumented feature?
</p></quote>

<p>Alexandre explained why that wouldn't work,
<quote who="Alexandre Julliard">
that's not how you are supposed to use build trees. The build
tree should contain only generated files, all the sources should be in
the source tree. It won't work right to have sources in both places,
not only because of the spec files, dependencies also won't be correct
include files may not always be included from where you expect, etc.
</quote></p> 

</section>
<section 
	title="Contacting Testers" 
	subject="Test contacts"
	archive="http://www.winehq.org/hypermail/wine-devel/2004/07/0230.html" 
	posts="1"
	startdate="17 Jul 2004 00:00:00 -0800"
>
<topic>Testing</topic>
<mention></mention>

<p>We asked folks if they could help run Wine's
<a href="http://www.winehq.com/?issue=224#Testing%20-%20Volunteers%20Needed">
automated test suite</a>.  This week Mike Hearn wondered how to go about
contacting some testers,
<quote who="Mike Hearn">
The test reports don't seem to include an email address for the reporters.
I'd love to contact Nicolas Escuder or Dimitris Koukoravas to try and find
out what their drive G: is and why it makes GetDiskFreeSpace fail.
</quote></p>

</section></kc>

