iTunes

James Hawkins truiken at gmail.com
Sun Feb 17 23:42:45 CST 2008


On Feb 17, 2008 11:39 PM, Maarten Lankhorst <m.b.lankhorst at gmail.com> wrote:
>
> Hi James,
>
> 2008/2/17, James Hawkins <truiken at gmail.com>:
> > On Feb 17, 2008 11:16 PM, Maarten Lankhorst <m.b.lankhorst at gmail.com> wrote:
> > > Hi James,
> > >
> > >
> > > 2008/2/17, James Hawkins <truiken at gmail.com>:
> > > > On Feb 17, 2008 11:07 PM, Maarten Lankhorst <m.b.lankhorst at gmail.com> wrote:
> > > > > 2008/2/17, James Hawkins <truiken at gmail.com>:
> > > > >
> > > > > > On Feb 17, 2008 9:42 PM, Maarten Lankhorst <m.b.lankhorst at gmail.com> wrote:
> > > > > > > Hi Christopher,
> > > > > > >
> > > > > > > Christopher Harvey wrote:
> > > > > > > > What needs to get done for iTunes to work?
> > > > > > >
> > > > > > > v7.6 basically works if you set windows version to windows vista, and
> > > > > > > find out why the installer fails to create the 'Bonjour service'
> > > > > > > registry stuff properly.
> > > > > > >
> > > > > > > I submitted 8 or so stub dll's to wine-patches that make iTunes v7.6
> > > > > > > actually start after installation. It checks for the dll's and
> > > > > > > silently fails if they don't exist.
> > > > > > >
> > > > > > > I haven't done any further testing yet though, but it looks like it is
> > > > > > > probably a small installer bug that prevents itunes v7.6 from
> > > > > > > installing without first manually creating those registry keys.
> > > > > > >
> > > > > >
> > > > > > The Bonjour service depends on the tcpip service.  As far as I know,
> > > > > > we don't provide that service.  What registry keys are you referring
> > > > > > to?
> > > > > Keys like:
> > > > > In HKLM\SYSTEM\CurrentControlSet\Services\Bonjour Service:
> > > > > ImagePath="C:\...."
> > > > > Start=0x00000002
> > > > > Description="....."
> > > > >
> > > > > Those are not created during install. If I manually add them the
> > > > > 'bonjour service' will report success on start, but actually crash
> > > > > right after. However it is enough to satisfy the itunes installer.
> > > > > Without those it will report failure without even attempting to start
> > > > > the service. :-)
> > > > >
> > > >
> > > > hmm according to the logs, the service is installed just fine.  You'd
> > > > get an err otherwise.  The dependencies aren't listed, but since we
> > > > don't have the tcpip service anyway, it won't make a difference
> > > > (though that might be why it crashes when you get the service to
> > > > start.)
> > > There is a big difference. Without it it will abort installation
> > > because the bonjour service fails to start. With it it will start but
> > > immediately crash, however that happens after start so installation
> > > happily continues. The effect is that installer will continue. I don't
> > > see how it can be fine if it fails to create the appropiate registry
> > > keys.
> > >
> >
> > I'm not saying it's not.  I'm saying that the call to CreateService
> > doesn't fail, or you'd get an err, like I said before.
> >
> >     service = CreateServiceW(hscm, name, disp, GENERIC_ALL, serv_type,
> >                              start_type, err_control, file->TargetPath,
> >                              load_order, NULL, NULL, serv_name, pass);
> >     if (!service)
> >     {
> >         if (GetLastError() != ERROR_SERVICE_EXISTS)
> >             ERR("Failed to create service %s: %d\n", debugstr_w(name),
> > GetLastError());
> >     }
> >
> > I'm not saying there's not a bug in CreateServiceW, but as it stands,
> > we don't get a failure.
> You can try for yourself at the following link:
> http://www.apple.com/downloads/macosx/apple/windows/bonjourforwindows.html
>
> Or try iTunes v7.6 directly.
>
> It could also be that it never calls CreateService for some reason,
> I'm not 100% sure.
>

I already have tried it; that's how I know the call doesn't fail.  Yes
it does call CreateService.  All the error paths in
ITERATE_InstallService have ERRs, so you'd see it if it did fail.

-- 
James Hawkins



More information about the wine-devel mailing list